QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#876813#5. 在线 O(1) 逆元atgc80 5340ms4608kbC++14529b2025-01-31 13:27:052025-01-31 13:27:06

Judging History

This is the latest submission verdict.

  • [2025-01-31 13:27:06]
  • Judged
  • Verdict: 80
  • Time: 5340ms
  • Memory: 4608kb
  • [2025-01-31 13:27:05]
  • Submitted

answer

// #include<bits/stdc++.h>
// using namespace std;
#include"inv.h"
const int maxn = 2e5+10,mod=998244353;
int inv_a[maxn];

void init(int){
	inv_a[1]=1;for(int i=2;i<maxn;++i)inv_a[i]=(long)(mod-mod/i)*inv_a[mod%i]%mod;
}

int inv(int x){
	long scal=1;
	while(x>=maxn)(scal*=-mod/x)%=mod,x=mod%x;
	return(scal+mod)*inv_a[x]%mod;
}

// signed main() {
// 	ios::sync_with_stdio(0),cin.tie(0);
	// init(0);
	// while(1){
	// 	int z=rand()%mod+1;
	// 	assert((long)z*inv(z)%mod == 1);
	// 	cerr<<z;
	// }
// }

Details


Pretests


Final Tests

Test #1:

score: 10
Accepted
time: 6ms
memory: 4480kb

Test #2:

score: 20
Accepted
time: 675ms
memory: 4608kb

Test #3:

score: 30
Accepted
time: 3355ms
memory: 4352kb

Test #4:

score: 20
Accepted
time: 5340ms
memory: 4608kb

Test #5:

score: 0
Time Limit Exceeded