QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#368126#5099. 朝圣道zyc0704190 65ms105400kbC++141.1kb2024-03-26 20:55:212024-03-26 20:55:22

Judging History

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

  • [2024-03-26 20:55:22]
  • 评测
  • 测评结果:0
  • 用时:65ms
  • 内存:105400kb
  • [2024-03-26 20:55:21]
  • 提交

answer

#include <bits/stdc++.h>
#define ll long long
#include "pilgrimage.h"
using namespace std;

int mod, inv, C[5005][5005], ans;
map<ll, int> mp;

inline int read() {
	char ch = getchar(); int x = 0;
	while (!isdigit(ch)) {ch = getchar();}
	while (isdigit(ch)) {x = x * 10 + ch - 48; ch = getchar();}
	return x;
}
inline int add(int x, int y) {x += y; return x >= mod ? x - mod : x;}
inline int del(int x, int y) {x -= y; return x < 0 ? x + mod : x;}
inline void Add(int &x, int y) {x = add(x, y);}
inline void Del(int &x, int y) {x = del(x, y);}
inline int qpow(int x, ll y) {
	int res = 1;
	while (y) {
		if (y & 1ll) res = 1ll * res * x % mod;
		x = 1ll * x * x % mod;
		y >>= 1;
	}
	return res;
}

void init(int o, int p) {
	mod = p;
	inv = (mod + 1) / 2;
	for (int i = 0; i <= 5000; ++i) {
		C[i][0] = C[i][i] = 1;
		for (int j = 1; j < i; ++j) C[i][j] = add(C[i - 1][j - 1], C[i - 1][j]);
	}
}

int ask(ll n) {
	if (mp.count(n)) return mp[n];
	if (n == 1) return mp[n] = inv;
	return 8ll * (2ll * n - 3) % mod * (2ll * n - 1) % mod * del(C[2 * n - 4][n - 2], C[2 * n - 4][n - 3]) % mod * qpow(inv, 4ll * n % mod);
}

Details

Tip: Click on the bar to expand more detailed information

Subtask #1:

score: 0
Wrong Answer

Test #1:

score: 0
Wrong Answer
time: 65ms
memory: 105400kb

input:

1 910276 554767
6
10
7
4
10
12
9
3
3
5
7
10
5
6
1
6
3
9
6
8
12
11
8
2
12
5
9
3
8
2
12
11
2
3
4
9
2
5
5
11
6
4
8
11
3
9
2
2
8
9
2
8
9
6
2
9
2
10
10
7
5
6
4
4
11
12
8
8
2
2
4
3
3
5
6
6
8
11
6
9
9
3
4
1
2
2
6
9
9
2
3
2
12
6
1
7
2
4
12
11
4
7
6
3
9
4
6
5
3
3
12
6
2
1
1
7
2
6
5
9
11
6
3
4
11
1
2
4
5
4
10...

output:

664639664
1882563322
562902624
126290080
1882563322
1346093564
1205297073
33562320
33562320
1258780320
562902624
1882563322
1258780320
664639664
277384
664639664
33562320
1205297073
664639664

result:

wrong answer 1st numbers differ - expected: '5419', found: '664639664'

Subtask #2:

score: 0
Skipped

Dependency #1:

0%

Subtask #3:

score: 0
Runtime Error

Test #5:

score: 0
Runtime Error

input:

3 1 334547
8234

output:

Unauthorized output

result:


Subtask #4:

score: 0
Skipped

Dependency #3:

0%

Subtask #5:

score: 0
Skipped

Dependency #4:

0%

Subtask #6:

score: 0
Runtime Error

Test #8:

score: 0
Runtime Error

input:

6 958477 522361
280121915553826833
734266539148641647
72849162479700582
274266741463686096
60278972064195458
828423669427600612
571432949203039978
518511460268700898
486268614705621285
19216283231217074
611458416727512530
175147354285288662
799769622289998997
400123443628688299
145546980862133838
40...

output:

Unauthorized output

result:


Subtask #7:

score: 0
Skipped

Dependency #3:

0%

Subtask #8:

score: 0
Runtime Error

Test #33:

score: 0
Runtime Error

input:

8 9963 251
831797004675585320
494759973681332858
701341496127272302
252910460485222469
250965009655458584
366193481309061299
633134388675839346
791999098066205672
196620805863610860
363773642045280947
466508590762410710
407790578717064135
181590911404670570
570642047249889864
70138464625729452
23634...

output:

Unauthorized output

result:


Subtask #9:

score: 0
Skipped

Dependency #1:

0%