QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#441270 | #8726. Magic Show | zzxLLL | 0 | 0ms | 0kb | C++17 | 1.5kb | 2024-06-14 14:07:04 | 2024-06-14 14:07:05 |
Alice
#include <vector>
#include "Alice.h"
std::vector<std::pair<int, int> > Alice(){
std::vector<std::pair<int, int> > vec;
long long x = setN(5000);
for (int i = 1; i < 5000; i++)
vec.emplace_back(x % i + 1, i + 1);
return vec;
}
Bob
#include <vector>
#include "Bob.h"
typedef long long Int;
// you may define some global variables, but it does not work if you try to transfer any information from function Alice() to function Bob() through these variables.
// you had better not use the same global variables in function Alice() and in function Bob().
inline Int exgcd(Int x, Int y, Int z, Int& p, Int& q) {
// xp + yq = z
if (y == 0) {
p = z / x, q = 0;
return x < 0 ? -x : x;
}
// yp' + (x - x / y * y)q' = z
Int p0, q0;
Int ret = exgcd(y, x % y, z, p0, q0);
// x * q' + y * (-x / y * q' + p') = z
// p = q', q = p' - x / y * q'
p = q0, q = p0 - x / y * q0;
return ret;
}
Int Bob(std::vector<std::pair<int,int> > V){
Int a = 1, b = 0;
// X = b (mod a)
for (auto [A, B] : V) {
A = A - 1, B = B - 1;
if (b % A == B) continue;
// X = B (mod A)
// X = b (mod a)
// X = b + pa = B + qA
// ap - Aq = B - b
Int p, q;
Int g = exgcd(a, -A, B - b, p, q);
Int dlt = A / g;
p = (p % dlt + dlt) % dlt;
b = b + a * p;
a = a / g * A;
b %= a;
}
return b;
}
Details
Tip: Click on the bar to expand more detailed information
Subtask #1:
score: 0
Runtime Error
Test #1:
score: 0
Runtime Error
input:
1 4005
output:
a890c6696058af3ad84e267191c856938f206a8ef7c63581510cdfa15e45f9c07d82b6a58fe3c8183e2b8f4b976dd90fbca50f420ce3dcf29a3d6a73adf47022 1 5000 1 2 2 3 1 4 2 5 1 6 4 7 2 8 6 9 1 10 6 11 2 12 10 13 2 14 2 15 1 16 6 17 11 18 10 19 16 20 6 21 16 22 2 23 4 24 22 25 6 26 2 27 10 28 2 29 4 30 16 31 7 32 6 33 13 3...
input:
a890c6696058af3ad84e267191c856938f206a8ef7c63581510cdfa15e45f9c07d82b6a58fe3c8183e2b8f4b976dd90fbca50f420ce3dcf29a3d6a73adf47022 1 5000 1 2 2 3 1 4 2 5 1 6 4 7 2 8 6 9 1 10 6 11 2 12 10 13 2 14 2 15 1 16 6 17 11 18 10 19 16 20 6 21 16 22 2 23 4 24 22 25 6 26 2 27 10 28 2 29 4 30 16 31 7 32 6 33 13 3...
output:
2 5000 4092 1 2 1 6 1 10 1 16 1 46 1 90 1 268 1 446 1 802 1 1336 1 4006 2 3 2 5 2 12 2 14 2 15 2 23 2 27 2 29 2 45 2 53 2 78 2 92 2 144 2 155 2 183 2 309 2 365 2 573 2 1002 2 2003 2 4005 3 4004 4 7 4 24 4 30 4 47 4 59 4 70 4 88 4 175 4 668 4 1335 4 2002 4 4003 5 4002 6 9 6 11 6 21 6 26 6 41 6 51 6 1...
input:
2 5000 4092 1 2 1 6 1 10 1 16 1 46 1 90 1 268 1 446 1 802 1 1336 1 4006 2 3 2 5 2 12 2 14 2 15 2 23 2 27 2 29 2 45 2 53 2 78 2 92 2 144 2 155 2 183 2 309 2 365 2 573 2 1002 2 2003 2 4005 3 4004 4 7 4 24 4 30 4 47 4 59 4 70 4 88 4 175 4 668 4 1335 4 2002 4 4003 5 4002 6 9 6 11 6 21 6 26 6 41 6 51 6 1...
output:
Subtask #2:
score: 0
Runtime Error
Test #13:
score: 0
Runtime Error
input:
1 17476204
output:
a890c6696058af3ad84e267191c856938f206a8ef7c63581510cdfa15e45f9c07d82b6a58fe3c8183e2b8f4b976dd90fbca50f420ce3dcf29a3d6a73adf47022 1 5000 1 2 1 3 2 4 1 5 5 6 5 7 5 8 5 9 5 10 5 11 10 12 5 13 6 14 5 15 5 16 13 17 1 18 5 19 5 20 5 21 5 22 21 23 23 24 5 25 5 26 19 27 23 28 5 29 22 30 5 31 17 32 13 33 32 ...
input:
a890c6696058af3ad84e267191c856938f206a8ef7c63581510cdfa15e45f9c07d82b6a58fe3c8183e2b8f4b976dd90fbca50f420ce3dcf29a3d6a73adf47022 1 5000 1 2 1 3 2 4 1 5 5 6 5 7 5 8 5 9 5 10 5 11 10 12 5 13 6 14 5 15 5 16 13 17 1 18 5 19 5 20 5 21 5 22 21 23 23 24 5 25 5 26 19 27 23 28 5 29 22 30 5 31 17 32 13 33 32 ...
output:
2 5000 4092 1 2 1 3 1 5 1 18 2 108 2 322 4 1188 5 6 5 7 5 9 5 10 5 11 5 15 5 16 5 19 5 21 5 22 5 25 5 26 5 29 5 31 5 36 5 37 5 39 5 41 5 43 5 46 5 51 5 57 5 58 5 61 5 64 5 71 5 73 5 76 5 77 5 85 5 91 5 101 5 106 5 115 5 121 5 134 5 141 5 147 5 151 5 153 5 172 5 176 5 181 5 191 5 201 5 211 5 220 5 22...
input:
2 5000 4092 1 2 1 3 1 5 1 18 2 108 2 322 4 1188 5 6 5 7 5 9 5 10 5 11 5 15 5 16 5 19 5 21 5 22 5 25 5 26 5 29 5 31 5 36 5 37 5 39 5 41 5 43 5 46 5 51 5 57 5 58 5 61 5 64 5 71 5 73 5 76 5 77 5 85 5 91 5 101 5 106 5 115 5 121 5 134 5 141 5 147 5 151 5 153 5 172 5 176 5 181 5 191 5 201 5 211 5 220 5 22...
output:
Subtask #3:
score: 0
Runtime Error
Test #25:
score: 0
Runtime Error
input:
1 355365355024496523
output:
a890c6696058af3ad84e267191c856938f206a8ef7c63581510cdfa15e45f9c07d82b6a58fe3c8183e2b8f4b976dd90fbca50f420ce3dcf29a3d6a73adf47022 1 5000 1 2 2 3 1 4 4 5 4 6 4 7 1 8 4 9 4 10 4 11 4 12 4 13 6 14 8 15 4 16 12 17 15 18 4 19 19 20 4 21 1 22 4 23 10 24 4 25 24 26 6 27 13 28 8 29 11 30 4 31 7 32 12 33 4 34...
input:
a890c6696058af3ad84e267191c856938f206a8ef7c63581510cdfa15e45f9c07d82b6a58fe3c8183e2b8f4b976dd90fbca50f420ce3dcf29a3d6a73adf47022 1 5000 1 2 2 3 1 4 4 5 4 6 4 7 1 8 4 9 4 10 4 11 4 12 4 13 6 14 8 15 4 16 12 17 15 18 4 19 19 20 4 21 1 22 4 23 10 24 4 25 24 26 6 27 13 28 8 29 11 30 4 31 7 32 12 33 4 34...
output:
2 5000 4092 1 2 1 22 1 2654 2 3 3 258 4 5 4 6 4 7 4 9 4 10 4 11 4 12 4 16 4 19 4 21 4 23 4 25 4 31 4 34 4 37 4 41 4 45 4 46 4 56 4 61 4 67 4 73 4 89 4 91 4 100 4 111 4 121 4 166 4 181 4 199 4 221 4 265 4 284 4 331 4 361 4 397 4 441 4 496 4 661 4 793 4 850 4 991 4 1133 4 1321 4 1416 4 1699 4 2265 4 2...
input:
2 5000 4092 1 2 1 22 1 2654 2 3 3 258 4 5 4 6 4 7 4 9 4 10 4 11 4 12 4 16 4 19 4 21 4 23 4 25 4 31 4 34 4 37 4 41 4 45 4 46 4 56 4 61 4 67 4 73 4 89 4 91 4 100 4 111 4 121 4 166 4 181 4 199 4 221 4 265 4 284 4 331 4 361 4 397 4 441 4 496 4 661 4 793 4 850 4 991 4 1133 4 1321 4 1416 4 1699 4 2265 4 2...