QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#318699 | #5533. Trick | minhnhatnoe | 0 | 26ms | 3896kb | C++14 | 2.1kb | 2024-01-31 17:22:11 | 2024-01-31 17:22:12 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
vector<int> gperm(int n){
vector<int> p(2*n+1); iota(p.begin(), p.end(), 0);
shuffle(p.begin(), p.end(), mt19937(24032006));
return p;
}
struct cplayer{
cplayer(){
int n; cin >> n;
vector<int> p = gperm(n);
vector<int> a(n), b(n);
vector<pair<int, int>> b_sorted(n);
for (int i=0; i<n; i++){
cin >> a[i];
b[i] = p[a[i]];
b_sorted[i] = {b[i], i};
}
sort(b_sorted.begin(), b_sorted.end());
int x = 0;
for (int i=0; i<n; i++) x = (x + b[i]) % p.size();
for (int i=0; i<n; i++){
int y = (x + p.size() - b[i]) % p.size();
int y1 = y % (n+1), y2 = y / (n+1);
auto it = lower_bound(b_sorted.begin(), b_sorted.end(), pair<int, int> (y1, -1));
if (it == b_sorted.end() || it->first != y1 || it->second == i) continue;
int xx = a[i], yy = a[it->second];
if (xx > yy) swap(xx, yy); // xx < yy
if (y2) swap(xx, yy);
cout << xx << " " << yy << "\n";
return;
}
}
};
struct hplayer{
hplayer(){
int n; cin >> n;
vector<int> p = gperm(n);
int v = 0;
for (int i=0; i<p.size(); i++){
v = (v + p[i]) % p.size();
}
for (int i=0; i<2; i++){
int xx, yy; cin >> xx >> yy;
v -= p[xx] + p[yy];
if (xx > yy) v -= n+1;
}
v = (v % signed(p.size()) + signed(p.size())) % p.size();
cout << find(p.begin(), p.end(), v) - p.begin() << "\n";
}
};
signed main(){
cin.tie(0)->sync_with_stdio(0);
// freopen("trick.in", "r", stdin);
// freopen("trick.out", "w", stdout);
int t, r; cin >> t >> r;
if (r == 1 || r == 2){
for (int i=0; i<t; i++){
cplayer();
}
}
else{
for (int i=0; i<t; i++){
hplayer();
}
}
}
Details
Tip: Click on the bar to expand more detailed information
Subtask #1:
score: 0
Wrong Answer
Test #1:
score: 0
Wrong Answer
time: 26ms = 0ms + 26ms
memory: 0kb,3888kb
input:
12012 1 6 0 1 2 3 4 5 6 0 1 2 3 4 5 6 0 1 2 3 4 5 6 0 1 2 3 4 5 6 0 1 2 3 4 5 6 0 1 2 3 4 5 6 0 1 2 3 4 5 6 0 1 2 3 4 6 6 0 1 2 3 4 6 6 0 1 2 3 4 6 6 0 1 2 3 4 6 6 0 1 2 3 4 6 6 0 1 2 3 4 6 6 0 1 2 3 4 6 6 0 1 2 3 5 6 6 0 1 2 3 5 6 6 0 1 2 3 5 6 6 0 1 2 3 5 6 6 0 1 2 3 5 6 6 0 1 2 3 5 6 6 0 1 2 3 5 ...
output:
3 0 3 0 3 0 3 0 3 0 3 0 3 0 1 2 1 2 1 2 1 2 1 2 1 2 1 2 3 1 3 1 3 1 3 1 3 1 3 1 3 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 4 0 4 0 4 0 4 0 4 0 4 0 4 0 0 3 0 3 0 3 0 3 0 3 0 3 0 3 1 3 1 3 1 3 1 3 1 3 1 3 1 3 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 3 0 3 0 3 0 3 0 3 0 3 0 3 0 4 0 4 0 4 0 4 0 4 0 4 0 4 4 5 4 5 4 5 4 5 4 5 ...
input:
12012 2 6 7 8 9 10 11 12 6 6 8 9 10 11 12 6 6 7 9 10 11 12 6 6 7 8 10 11 12 6 6 7 8 9 11 12 6 6 7 8 9 10 12 6 6 7 8 9 10 11 6 7 8 9 10 11 12 6 5 8 9 10 11 12 6 5 7 9 10 11 12 6 5 7 8 10 11 12 6 5 7 8 9 11 12 6 5 7 8 9 10 12 6 5 7 8 9 10 11 6 7 8 9 10 11 12 6 4 8 9 10 11 12 6 4 7 9 10 11 12 6 4 7 8 1...
output:
8 9 6 9 10 6 9 6 10 12 9 8 8 9 8 10 5 9 10 5 9 5 10 8 11 7 8 9 9 8 4 9 10 4 9 4 7 10 8 9 11 8 3 9 10 3 9 3 7 9 10 8 8 9 12 10 2 9 10 2 9 2 9 12 10 7 8 9 10 12 1 9 10 1 9 1 12 10 7 10 8 9 8 11 0 9 10 0 9 0 10 7 8 10 8 10 6 10 10 12 6 8 11 6 9 8 9 6 6 11 6 10 8 11 11 8 11 6 6 11 8 9 6 9 11 9 12 10 9 1...
input:
12012 3 6 3 0 8 9 6 3 0 6 9 6 3 0 10 6 6 3 0 9 6 6 3 0 10 12 6 3 0 9 8 6 3 0 8 9 6 1 2 8 10 6 1 2 5 9 6 1 2 10 5 6 1 2 9 5 6 1 2 10 8 6 1 2 11 7 6 1 2 8 9 6 3 1 9 8 6 3 1 4 9 6 3 1 10 4 6 3 1 9 4 6 3 1 7 10 6 3 1 8 9 6 3 1 11 8 6 0 1 3 9 6 0 1 10 3 6 0 1 9 3 6 0 1 7 9 6 0 1 10 8 6 0 1 8 9 6 0 1 12 1...
output:
6 8 9 10 11 12 6 7 8 9 10 11 12 5 7 8 9 10 11 4 5 8 9 10 11 12 3 8 8 9 10 11 12 2 4 8 9 10 11 12 1 12 8 9 10 11 12 12 10 9 10 12 0 1 6 8 12 3 2 10 1 9 0 4 6 1 12 10 7 0 9 5 8 7 6 9 4 4 11 3 10 7 9 10 6 3 2 11 8 12 0 10 1 9 0 4 6 3 10 11 12 2 11 9 5 10 11 12 1 0 7 4 10 11 12 11 9 6 1 10 11 12 3 9 6 1...
result:
wrong answer the card you returned is 8, but expected 7 (test case 2)
Subtask #2:
score: 0
Skipped
Subtask #3:
score: 0
Wrong Answer
Test #11:
score: 0
Wrong Answer
time: 20ms = 0ms + 20ms
memory: 0kb,3896kb
input:
6525 1 6 10 1 11 3 12 6 6 1 7 10 12 5 6 6 0 10 12 7 9 8 6 12 1 8 4 7 11 6 11 8 9 4 10 6 6 0 7 2 3 4 5 6 0 8 3 10 11 6 6 0 1 2 4 7 6 6 0 1 11 9 5 6 6 7 1 12 8 6 5 7 0 1 13 10 12 5 6 7 0 14 2 3 4 12 6 7 11 1 3 8 12 6 13 7 0 1 2 3 13 5 14 7 11 9 10 8 4 14 7 7 0 8 14 3 4 13 11 7 0 10 2 14 8 5 6 7 0 13 2...
output:
1 10 1 12 10 7 4 1 11 10 5 4 11 0 1 0 1 6 10 13 2 14 13 11 1 14 9 11 0 11 0 14 13 0 1 7 10 9 10 13 4 6 1 7 3 12 6 14 3 4 0 9 10 0 8 12 2 16 12 18 3 1 11 0 4 17 18 8 8 13 4 0 4 0 9 0 1 3 12 5 2 11 13 18 4 2 15 9 6 4 3 1 5 0 0 1 4 3 0 3 20 4 21 5 18 1 9 0 14 20 5 2 8 0 8 14 21 11 8 15 4 0 21 11 0 1 8 ...
input:
6525 2 6 0 2 4 5 8 9 6 2 3 4 8 9 11 6 1 2 3 4 5 11 6 0 3 5 6 9 10 6 0 1 3 5 7 12 6 1 6 8 10 11 12 6 2 4 5 7 9 12 6 5 8 9 10 11 12 6 3 4 7 8 10 12 6 0 2 3 4 9 11 7 2 3 4 7 8 9 11 7 1 5 7 8 9 10 13 7 0 4 5 7 9 10 14 7 4 6 7 8 9 10 11 7 0 1 2 3 5 6 13 7 1 2 5 7 9 10 12 7 1 3 4 9 11 12 13 7 1 3 4 6 10 1...
output:
0 4 9 2 11 3 5 3 5 3 10 11 4 2 8 10 4 7 3 2 2 9 1 13 9 4 7 10 3 1 10 5 1 9 4 1 8 10 3 11 1 0 9 0 9 13 1 5 1 8 10 5 4 11 6 3 11 2 10 4 11 1 18 12 9 1 3 0 2 3 11 2 11 16 17 8 1 11 9 4 17 0 20 7 0 17 1 9 17 0 8 2 11 0 8 6 3 2 0 20 2 5 1 3 1 0 20 4 1 11 9 13 18 6 17 10 3 2 5 3 7 0 1 11 7 1 17 2 7 0 2 7 ...
input:
6525 3 6 1 10 0 4 6 1 12 9 2 6 10 7 11 3 6 4 1 5 3 6 11 10 5 3 6 5 4 10 11 6 11 0 4 2 6 1 0 8 10 6 1 6 4 7 6 10 13 3 2 7 2 14 2 9 7 13 11 1 13 7 1 14 9 4 7 9 11 7 10 7 0 11 3 1 7 0 14 10 5 7 13 0 1 9 7 1 7 4 1 7 10 9 8 10 7 10 13 3 11 8 4 6 1 0 8 1 7 9 0 8 3 12 9 13 8 6 14 1 5 8 3 4 1 8 8 0 9 10 5 8...
output:
7 0 6 2 2 9 1 12 6 6 8 14 5 2 11 5 11 8 7 1 7 0 13 3 1 0 9 4 3 5 7 1 9 9 2 17 1 15 15 7 16 6 14 13 8 2 19 13 6 17 17 11 1 14 16 13 13 5 20 17 17 15 5 4 8 10 12 12 21 1 8 8 4 15 17 7 15 11 8 9 14 6 0 3 9 18 10 10 1 15 5 19 7 4 22 12 5 6 17 17 6 12 7 9 12 0 22 15 8 13 19 14 5 10 19 9 12 18 7 4 7 16 8 ...
result:
wrong answer the card you returned is 12, but expected 3 (test case 8)
Subtask #4:
score: 0
Skipped