QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#734298#5. 在线 O(1) 逆元zyzzyhCompile Error//C++202.6kb2024-11-11 08:41:322024-11-11 08:41:32

Judging History

你现在查看的是最新测评结果

  • [2024-11-11 08:41:32]
  • 评测
  • [2024-11-11 08:41:32]
  • 提交

answer

#include<bits/stdc++.h>
#include"inv.h"
using namespace std;
const int N = 1e6+100;
typedef long long ll;
ll a,b;
inline void mod(ll &x)
{
	if(x>=1071856712387919872)x-=1071856712387919872;
	if(x>=535928356193959936)x-=535928356193959936;
	if(x>=267964178096979968)x-=267964178096979968;
	if(x>=133982089048489984)x-=133982089048489984;
	if(x>=66991044524244992)x-=66991044524244992;
	if(x>=33495522262122496)x-=33495522262122496;
	if(x>=16747761131061248)x-=16747761131061248;
	if(x>=8373880565530624)x-=8373880565530624;
	if(x>=4186940282765312)x-=4186940282765312;
	if(x>=2093470141382656)x-=2093470141382656;
	if(x>=1046735070691328)x-=1046735070691328;
	if(x>=523367535345664)x-=523367535345664;
	if(x>=261683767672832)x-=261683767672832;
	if(x>=130841883836416)x-=130841883836416;
	if(x>=65420941918208)x-=65420941918208;
	if(x>=32710470959104)x-=32710470959104;
	if(x>=16355235479552)x-=16355235479552;
	if(x>=8177617739776)x-=8177617739776;
	if(x>=4088808869888)x-=4088808869888;
	if(x>=2044404434944)x-=2044404434944;
	if(x>=1022202217472)x-=1022202217472;
	if(x>=511101108736)x-=511101108736;
	if(x>=255550554368)x-=255550554368;
	if(x>=127775277184)x-=127775277184;
	if(x>=63887638592)x-=63887638592;
	if(x>=31943819296)x-=31943819296;
	if(x>=15971909648)x-=15971909648;
	if(x>=7985954824)x-=7985954824;
	if(x>=3992977412)x-=3992977412;
	if(x>=1996488706)x-=1996488706;
	if(x>=998244353)x-=998244353;
	return;
}
inline int inv(int xx)
{
	ll res=1,x=xx;
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	res=res*x,mod(res);
	x=x*x,mod(x);
	return res;
}
void init(int p)
{
	;
}

Details

implementer.cpp: In function ‘int main()’:
implementer.cpp:22:14: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
   22 |         scanf("%d", &n);
      |         ~~~~~^~~~~~~~~~
/usr/bin/ld: /tmp/ccHgtNAj.o: in function `main':
implementer.cpp:(.text.startup+0x1d0): undefined reference to `inv(int)'
collect2: error: ld returned 1 exit status