QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#438772 | #8056. Travel 2 | stasio6# | AC ✓ | 156ms | 3992kb | C++14 | 2.3kb | 2024-06-11 05:24:16 | 2024-06-11 05:24:18 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define int ll
#define rep(i,a,b) for(int i = a; i < (b); i++)
#define all(x) begin(x), end(x)
#define sz(x) (int)(x).size()
#define PB push_back
#define FS first
#define SD second
template<class A, class B> void cmx(A& x, B y) {x=max<A>(x, y);}
template<class A, class B> void cmn(A& x, B y) {x=min<A>(x, y);}
typedef pair<int, int> pii;
typedef vector<int> vi;
int tim = 0;
int lastvis[1000002];
int parent[1000002];
int from[1000002];
int fromid[1000002];
int odw[1000002];
int t[1000002];
vector<pii> answer;
void touch(int x) {
if (t[x] != tim) {
t[x] = tim;
from[x] = -1;
lastvis[x] = 0;
odw[x] = 0;
}
}
void fun() {
answer.clear();
tim++;
int curv, deg;
cin >> curv >> deg;
touch(curv);
parent[curv] = -1;
odw[curv] = 1;
while (true) {
touch(curv);
if (lastvis[curv] == deg) {
if (parent[curv] == -1) {
cout << "! ";
sort(all(answer));
for (int i = 0; i < sz(answer); i++) {
if (i == 0 || answer[i] != answer[i-1])
cout << answer[i].FS << " " << answer[i].SD << " ";
}
cout << endl;
string slo;
cin >> slo;
return;
} else {
cout << "> " << parent[curv] << endl;
}
cin >> curv >> deg;
} else {
cout << "> " << ++lastvis[curv] << endl;
int newv;
cin >> newv >> deg;
answer.PB(minmax(newv, curv));
touch(newv);
if (odw[newv] == 0) {
from[newv] = curv;
fromid[newv] = lastvis[curv];
odw[newv] = 1;
curv = newv;
} else if (newv == from[curv]) {
parent[curv] = lastvis[curv];
cout << "> " << fromid[curv] << endl;
cin >> curv >> deg;
} else {
curv = newv;
}
}
}
}
signed main() {
// cin.tie(0)->sync_with_stdio(0); cin.exceptions(cin.failbit);
int tt;
cin >> tt;
while (tt--) fun();
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 3612kb
input:
2 1 1 2 1 1 1 2 1 1 1 Correct 1 3 2 2 1 3 2 2 4 2 1 3 3 1 1 3 3 1 1 3 4 2 2 2 4 2 2 2 1 3 Correct
output:
> 1 > 1 > 1 > 1 ! 1 2 > 1 > 1 > 1 > 2 > 1 > 2 > 1 > 2 > 1 > 3 > 2 > 2 > 2 > 1 ! 1 2 1 3 1 4 2 4
result:
ok correct! (2 test cases)
Test #2:
score: 0
Accepted
time: 113ms
memory: 3532kb
input:
1000 1 9 2 7 1 9 2 7 3 9 1 9 3 9 4 9 1 9 4 9 3 9 4 9 7 7 1 9 5 8 1 9 5 8 8 8 1 9 6 9 1 9 6 9 2 7 10 6 1 9 7 7 4 9 7 7 8 8 5 8 8 8 10 6 2 7 10 6 8 8 9 8 1 9 8 8 7 7 5 8 9 8 3 9 9 8 5 8 2 7 6 9 10 6 4 9 10 6 6 9 5 8 3 9 2 7 3 9 5 8 6 9 8 8 3 9 10 6 3 9 8 8 6 9 3 9 7 7 3 9 6 9 9 8 2 7 5 8 7 7 9 8 8 8 9...
output:
> 1 > 1 > 1 > 2 > 1 > 2 > 2 > 1 > 3 > 2 > 2 > 3 > 1 > 4 > 1 > 4 > 2 > 1 > 5 > 1 > 5 > 2 > 3 > 1 > 6 > 2 > 3 > 3 > 2 > 2 > 3 > 2 > 3 > 3 > 4 > 1 > 7 > 5 > 4 > 3 > 2 > 3 > 3 > 4 > 4 > 3 > 4 > 4 > 5 > 4 > 5 > 4 > 2 > 5 > 6 > 5 > 6 > 6 > 6 > 7 > 7 > 6 > 8 > 5 > 9 > 7 > 4 > 5 > 7 > 6 > 5 > 4 > 6 > 7 > 8 ...
result:
ok correct! (1000 test cases)
Test #3:
score: 0
Accepted
time: 130ms
memory: 3612kb
input:
500 1 19 2 8 1 19 2 8 17 10 1 19 3 7 1 19 3 7 20 6 1 19 4 8 1 19 4 8 3 7 11 8 1 19 5 7 1 19 5 7 7 11 1 19 6 7 1 19 6 7 5 7 6 7 17 10 2 8 17 10 6 7 11 8 3 7 11 8 8 4 1 19 7 11 5 7 7 11 16 7 1 19 8 4 11 8 8 4 15 8 1 19 9 7 1 19 9 7 4 8 12 7 1 19 10 9 1 19 10 9 5 7 10 9 17 10 14 9 1 19 11 8 16 7 13 4 1...
output:
> 1 > 1 > 1 > 2 > 1 > 2 > 1 > 2 > 2 > 1 > 3 > 1 > 3 > 2 > 3 > 1 > 4 > 1 > 4 > 2 > 1 > 5 > 1 > 5 > 2 > 3 > 3 > 2 > 2 > 3 > 4 > 2 > 3 > 3 > 1 > 6 > 2 > 2 > 3 > 1 > 7 > 2 > 3 > 3 > 1 > 8 > 1 > 8 > 2 > 3 > 1 > 9 > 1 > 9 > 2 > 4 > 3 > 4 > 1 > 10 > 4 > 2 > 1 > 11 > 2 > 3 > 3 > 3 > 5 > 4 > 4 > 5 > 6 > 5 > ...
result:
ok correct! (500 test cases)
Test #4:
score: 0
Accepted
time: 156ms
memory: 3652kb
input:
100 1 99 2 5 1 99 2 5 12 7 1 99 3 5 1 99 3 5 76 9 1 99 4 10 1 99 4 10 74 6 1 99 5 3 1 99 5 3 99 7 1 99 6 9 1 99 6 9 20 4 1 99 7 6 1 99 7 6 67 10 1 99 8 8 1 99 8 8 70 9 1 99 9 9 1 99 9 9 93 10 1 99 10 5 1 99 10 5 47 4 1 99 11 4 1 99 11 4 95 12 1 99 12 7 2 5 12 7 41 7 1 99 13 6 1 99 13 6 86 6 1 99 14 ...
output:
> 1 > 1 > 1 > 2 > 1 > 2 > 1 > 2 > 2 > 1 > 3 > 1 > 3 > 2 > 1 > 4 > 1 > 4 > 2 > 1 > 5 > 1 > 5 > 2 > 1 > 6 > 1 > 6 > 2 > 1 > 7 > 1 > 7 > 2 > 1 > 8 > 1 > 8 > 2 > 1 > 9 > 1 > 9 > 2 > 1 > 10 > 1 > 10 > 2 > 1 > 11 > 2 > 2 > 3 > 1 > 12 > 1 > 12 > 2 > 1 > 13 > 1 > 13 > 2 > 1 > 14 > 1 > 14 > 2 > 1 > 15 > 1 > ...
result:
ok correct! (100 test cases)
Test #5:
score: 0
Accepted
time: 151ms
memory: 3724kb
input:
10 1 999 2 8 1 999 2 8 717 8 1 999 3 9 1 999 3 9 311 9 1 999 4 8 1 999 4 8 876 8 1 999 5 7 1 999 5 7 866 6 1 999 6 7 1 999 6 7 687 9 1 999 7 4 1 999 7 4 587 8 1 999 8 4 1 999 8 4 98 7 1 999 9 13 1 999 9 13 935 11 1 999 10 11 1 999 10 11 232 7 1 999 11 7 1 999 11 7 84 8 1 999 12 7 1 999 12 7 595 7 1 ...
output:
> 1 > 1 > 1 > 2 > 1 > 2 > 1 > 2 > 2 > 1 > 3 > 1 > 3 > 2 > 1 > 4 > 1 > 4 > 2 > 1 > 5 > 1 > 5 > 2 > 1 > 6 > 1 > 6 > 2 > 1 > 7 > 1 > 7 > 2 > 1 > 8 > 1 > 8 > 2 > 1 > 9 > 1 > 9 > 2 > 1 > 10 > 1 > 10 > 2 > 1 > 11 > 1 > 11 > 2 > 1 > 12 > 1 > 12 > 2 > 1 > 13 > 1 > 13 > 2 > 1 > 14 > 1 > 14 > 2 > 1 > 15 > 1 >...
result:
ok correct! (10 test cases)
Test #6:
score: 0
Accepted
time: 123ms
memory: 3884kb
input:
4 1 999 2 24 1 999 2 24 293 19 1 999 3 20 1 999 3 20 804 22 1 999 4 17 1 999 4 17 992 26 1 999 5 29 1 999 5 29 134 20 1 999 6 21 1 999 6 21 883 18 1 999 7 21 1 999 7 21 10 14 1 999 8 19 1 999 8 19 214 18 1 999 9 21 1 999 9 21 420 29 1 999 10 14 816 16 1 999 11 12 1 999 11 12 814 13 1 999 12 17 1 999...
output:
> 1 > 1 > 1 > 2 > 1 > 2 > 1 > 2 > 2 > 1 > 3 > 1 > 3 > 2 > 1 > 4 > 1 > 4 > 2 > 1 > 5 > 1 > 5 > 2 > 1 > 6 > 1 > 6 > 2 > 1 > 7 > 1 > 7 > 2 > 1 > 8 > 1 > 8 > 2 > 1 > 9 > 2 > 1 > 10 > 1 > 10 > 2 > 1 > 11 > 1 > 11 > 2 > 1 > 12 > 1 > 12 > 2 > 1 > 13 > 1 > 13 > 2 > 1 > 14 > 1 > 14 > 2 > 1 > 15 > 1 > 15 > 2 ...
result:
ok correct! (4 test cases)
Test #7:
score: 0
Accepted
time: 133ms
memory: 3992kb
input:
4 1 199 2 106 1 199 2 106 114 107 1 199 3 95 1 199 3 95 74 101 1 199 4 102 1 199 4 102 56 101 1 199 5 103 1 199 5 103 117 106 1 199 6 103 1 199 6 103 4 102 44 100 1 199 7 110 1 199 7 110 178 97 1 199 8 109 1 199 8 109 2 106 8 109 20 108 1 199 9 104 1 199 9 104 85 92 1 199 10 98 1 199 10 98 128 99 1 ...
output:
> 1 > 1 > 1 > 2 > 1 > 2 > 1 > 2 > 2 > 1 > 3 > 1 > 3 > 2 > 1 > 4 > 1 > 4 > 2 > 1 > 5 > 1 > 5 > 2 > 3 > 1 > 6 > 1 > 6 > 2 > 1 > 7 > 1 > 7 > 2 > 3 > 3 > 1 > 8 > 1 > 8 > 2 > 1 > 9 > 1 > 9 > 2 > 1 > 10 > 1 > 10 > 2 > 1 > 11 > 1 > 11 > 2 > 1 > 12 > 1 > 12 > 2 > 1 > 13 > 1 > 13 > 2 > 1 > 14 > 1 > 14 > 2 > ...
result:
ok correct! (4 test cases)
Test #8:
score: 0
Accepted
time: 99ms
memory: 3832kb
input:
4 1 140 2 140 1 140 2 140 3 140 1 140 3 140 2 140 3 140 4 140 1 140 4 140 2 140 4 140 3 140 4 140 5 140 1 140 5 140 2 140 5 140 3 140 5 140 4 140 5 140 6 140 1 140 6 140 2 140 6 140 3 140 6 140 4 140 6 140 5 140 6 140 7 140 1 140 7 140 2 140 7 140 3 140 7 140 4 140 7 140 5 140 7 140 6 140 7 140 8 14...
output:
> 1 > 1 > 1 > 2 > 1 > 2 > 2 > 2 > 3 > 1 > 3 > 2 > 3 > 3 > 3 > 4 > 1 > 4 > 2 > 4 > 3 > 4 > 4 > 4 > 5 > 1 > 5 > 2 > 5 > 3 > 5 > 4 > 5 > 5 > 5 > 6 > 1 > 6 > 2 > 6 > 3 > 6 > 4 > 6 > 5 > 6 > 6 > 6 > 7 > 1 > 7 > 2 > 7 > 3 > 7 > 4 > 7 > 5 > 7 > 6 > 7 > 7 > 7 > 8 > 1 > 8 > 2 > 8 > 3 > 8 > 4 > 8 > 5 > 8 > 6 ...
result:
ok correct! (4 test cases)
Test #9:
score: 0
Accepted
time: 81ms
memory: 3788kb
input:
4 1 2498 2 2 1 2498 2 2 2500 2498 2 2 2500 2498 3 2 1 2498 3 2 2500 2498 3 2 2500 2498 4 2 1 2498 4 2 2500 2498 4 2 2500 2498 5 2 1 2498 5 2 2500 2498 5 2 2500 2498 6 2 1 2498 6 2 2500 2498 6 2 2500 2498 7 2 1 2498 7 2 2500 2498 7 2 2500 2498 8 2 1 2498 8 2 2500 2498 8 2 2500 2498 9 2 1 2498 9 2 250...
output:
> 1 > 1 > 1 > 2 > 1 > 2 > 2 > 1 > 2 > 2 > 2 > 2 > 3 > 1 > 3 > 2 > 3 > 2 > 4 > 1 > 4 > 2 > 4 > 2 > 5 > 1 > 5 > 2 > 5 > 2 > 6 > 1 > 6 > 2 > 6 > 2 > 7 > 1 > 7 > 2 > 7 > 2 > 8 > 1 > 8 > 2 > 8 > 2 > 9 > 1 > 9 > 2 > 9 > 2 > 10 > 1 > 10 > 2 > 10 > 2 > 11 > 1 > 11 > 2 > 11 > 2 > 12 > 1 > 12 > 2 > 12 > 2 > 1...
result:
ok correct! (4 test cases)
Extra Test:
score: 0
Extra Test Passed