QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#534331#5. 在线 O(1) 逆元surgutti100 ✓5121ms394516kbC++14363b2024-08-27 02:43:392024-08-27 02:43:40

Judging History

你现在查看的是测评时间为 2024-08-27 02:43:40 的历史记录

  • [2024-11-05 22:03:22]
  • 管理员手动重测本题所有提交记录
  • 测评结果:100
  • 用时:5211ms
  • 内存:394504kb
  • [2024-08-27 02:43:40]
  • 评测
  • 测评结果:100
  • 用时:5121ms
  • 内存:394516kb
  • [2024-08-27 02:43:39]
  • 提交

answer

#include "inv.h"

constexpr int N = 100000000 + 1;
constexpr int mod = 998244353;

int inverse[N];

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

int inv(int x) {
	if (x < N)
		return inverse[x];
	return mod - (long long) (mod / x) * inv(mod % x) % mod;
}

Details


Pretests


Final Tests

Test #1:

score: 30
Accepted
time: 610ms
memory: 394468kb

Test #2:

score: 40
Accepted
time: 1026ms
memory: 394468kb

Test #3:

score: 30
Accepted
time: 5121ms
memory: 394516kb