QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#883699 | #10053. Post Office | ProjectCF | 12 | 42ms | 20396kb | C++14 | 1.5kb | 2025-02-05 18:12:14 | 2025-02-05 18:12:14 |
Judging History
answer
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <algorithm>
#include <vector>
#include <queue>
#include <stdlib.h>
#include <time.h>
#include <map>
#include <complex>
#include <math.h>
#include <stack>
#include <unordered_map>
#include <set>
#include <string.h>
#include <iomanip>
#include <bitset>
#include <random>
using namespace std;
//#define int long long
#define P make_pair
#define A first
#define B second
typedef pair<int, int> pii;
int fa[200010];
priority_queue<pii> q[200010];
vector<pii> t[200010];
signed main() {
ios::sync_with_stdio(0);
int n;
cin >> n;
for (int i = 1; i <= n; i++)cin >> fa[i];
int m, ok = 1;
cin >> m;
for (int i = 1; i <= m; i++) {
int a, b;
cin >> a >> b;
int c = a, d = 0;
while (1) {
if (c == b)break;
c = fa[c];
d++;
if (d == n)break;
}
if (d == n)ok = 0;
else q[a].push(P(d, b));
}
if (ok == 0) {
cout << -1 << endl;
return 0;
}
int ans = 0;
while (1) {
ok = 1;
for (int i = 1; i <= n; i++) {
if (!q[i].empty() && q[i].top().A != 0)ok = 0, t[fa[i]].push_back(P(q[i].top().A - 1, q[i].top().B)), q[i].pop();
}
for (int i = 1; i <= n; i++)while (!t[i].empty())q[i].push(t[i][t[i].size() - 1]), t[i].pop_back();
if (!ok)ans++;
else {
cout << ans << endl;
return 0;
}
}
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Subtask #1:
score: 3
Accepted
Test #1:
score: 3
Accepted
time: 8ms
memory: 14592kb
input:
3000 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 1...
output:
1119
result:
ok single line: '1119'
Test #2:
score: 3
Accepted
time: 5ms
memory: 14740kb
input:
3000 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 1...
output:
774
result:
ok single line: '774'
Test #3:
score: 3
Accepted
time: 0ms
memory: 14568kb
input:
3000 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 1...
output:
-1
result:
ok single line: '-1'
Test #4:
score: 3
Accepted
time: 1ms
memory: 14980kb
input:
3000 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 1...
output:
-1
result:
ok single line: '-1'
Test #5:
score: 3
Accepted
time: 2ms
memory: 14724kb
input:
3000 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 1...
output:
-1
result:
ok single line: '-1'
Test #6:
score: 3
Accepted
time: 2ms
memory: 14720kb
input:
3000 1 1 1 2 4 4 5 7 7 5 4 11 6 7 6 12 5 6 9 14 16 11 18 1 18 11 16 8 6 28 10 6 30 33 30 1 11 21 36 21 31 35 14 40 26 35 26 24 21 20 3 15 43 36 20 37 33 14 14 46 12 1 38 1 29 57 10 24 4 34 67 29 37 37 73 47 34 32 29 65 48 21 39 24 75 51 75 85 11 27 69 83 32 41 67 32 62 42 10 73 87 2 88 29 81 71 41 2...
output:
-1
result:
ok single line: '-1'
Test #7:
score: 3
Accepted
time: 3ms
memory: 14720kb
input:
3000 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101...
output:
-1
result:
ok single line: '-1'
Subtask #2:
score: 9
Accepted
Test #8:
score: 9
Accepted
time: 2ms
memory: 14596kb
input:
5 2 1 1 3 1 5 1 2 4 1 5 1 3 1 4 1
output:
3
result:
ok single line: '3'
Test #9:
score: 9
Accepted
time: 0ms
memory: 14884kb
input:
5 2 1 2 3 3 5 3 2 5 2 5 1 4 2 2 1
output:
4
result:
ok single line: '4'
Test #10:
score: 9
Accepted
time: 0ms
memory: 14720kb
input:
5 2 1 1 2 4 5 5 1 4 1 3 2 5 2 4 2
output:
4
result:
ok single line: '4'
Test #11:
score: 9
Accepted
time: 2ms
memory: 15060kb
input:
5 2 1 1 1 1 5 1 2 3 1 2 1 4 2 2 1
output:
2
result:
ok single line: '2'
Test #12:
score: 9
Accepted
time: 0ms
memory: 14592kb
input:
5 2 1 1 2 4 5 3 1 5 2 1 2 3 1 4 2
output:
2
result:
ok single line: '2'
Test #13:
score: 9
Accepted
time: 1ms
memory: 14716kb
input:
5 2 1 1 1 2 5 5 2 3 2 3 1 5 2 2 1
output:
2
result:
ok single line: '2'
Test #14:
score: 9
Accepted
time: 0ms
memory: 14724kb
input:
5 2 1 2 2 4 5 2 1 5 2 3 2 5 1 2 1
output:
3
result:
ok single line: '3'
Test #15:
score: 9
Accepted
time: 1ms
memory: 14720kb
input:
5 2 1 2 3 4 5 4 1 5 2 5 2 3 1 1 2
output:
4
result:
ok single line: '4'
Test #16:
score: 9
Accepted
time: 0ms
memory: 15196kb
input:
10 2 3 4 5 1 1 1 4 6 2 10 4 2 1 4 6 2 3 1 4 3 10 4 7 3 5 3 6 2 7 1
output:
7
result:
ok single line: '7'
Test #17:
score: 9
Accepted
time: 3ms
memory: 14588kb
input:
10 2 3 4 5 1 2 6 5 8 1 10 3 4 10 2 4 1 6 2 10 4 4 1 7 1 5 1 10 3 1 3
output:
6
result:
ok single line: '6'
Test #18:
score: 9
Accepted
time: 1ms
memory: 14724kb
input:
10 2 3 4 5 1 5 3 5 5 8 10 5 3 10 3 8 5 9 4 2 4 4 3 3 4 1 4 10 4 6 1
output:
7
result:
ok single line: '7'
Test #19:
score: 9
Accepted
time: 1ms
memory: 14724kb
input:
10 2 3 4 5 1 2 5 6 4 7 10 7 5 10 1 3 2 1 5 3 1 10 3 4 1 3 5 1 5 7 4
output:
7
result:
ok single line: '7'
Test #20:
score: 9
Accepted
time: 2ms
memory: 14596kb
input:
10 2 3 4 5 1 4 3 5 2 5 10 7 4 5 2 10 5 6 5 6 5 8 5 8 3 3 4 4 2 9 5
output:
4
result:
ok single line: '4'
Test #21:
score: 9
Accepted
time: 41ms
memory: 15032kb
input:
3000 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 1...
output:
1563
result:
ok single line: '1563'
Test #22:
score: 9
Accepted
time: 38ms
memory: 14724kb
input:
3000 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 1...
output:
1547
result:
ok single line: '1547'
Test #23:
score: 9
Accepted
time: 39ms
memory: 15020kb
input:
3000 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 1...
output:
1574
result:
ok single line: '1574'
Test #24:
score: 9
Accepted
time: 1ms
memory: 15204kb
input:
5 2 1 1 1 1 5 1 2 3 1 2 1 5 4 2 1
output:
-1
result:
ok single line: '-1'
Test #25:
score: 9
Accepted
time: 0ms
memory: 15024kb
input:
10 2 3 4 5 1 7 8 9 10 6 10 3 5 3 5 1 5 3 4 5 3 10 6 4 6 6 7 9 10 2 1
output:
-1
result:
ok single line: '-1'
Test #26:
score: 9
Accepted
time: 1ms
memory: 14556kb
input:
3000 1 1 1 3 3 4 4 7 7 8 5 7 1 4 3 15 15 11 2 18 9 7 2 23 3 17 14 10 18 1 28 20 25 33 28 11 21 6 2 3 36 2 41 6 28 26 7 12 26 48 6 37 28 42 21 27 47 21 46 23 54 34 29 2 49 63 31 47 39 39 47 37 69 59 9 65 62 37 64 24 47 13 6 19 31 84 59 40 5 9 45 34 11 43 5 78 93 70 38 2 94 5 97 53 43 94 47 32 69 17 3...
output:
-1
result:
ok single line: '-1'
Test #27:
score: 9
Accepted
time: 2ms
memory: 14724kb
input:
3000 89 1 1 3 2 5 6 3 6 6 7 11 8 12 14 12 14 13 16 15 16 21 18 23 22 23 24 27 24 26 29 27 32 30 31 34 32 33 35 38 36 39 41 42 41 42 42 43 45 49 46 51 48 50 51 52 55 56 57 57 58 61 59 63 61 62 63 67 68 68 66 67 69 73 72 74 73 74 74 76 77 79 79 79 82 82 85 85 84 88 90 91 92 89 91 93 96 97 94 98 99 100...
output:
7
result:
ok single line: '7'
Test #28:
score: 9
Accepted
time: 0ms
memory: 15488kb
input:
3000 1699 1 1 3 2 4 5 3 2 4 9 7 5 13 10 12 12 10 11 16 18 19 21 18 18 23 22 26 22 26 23 31 27 29 28 28 29 33 31 35 34 34 36 38 39 39 45 41 43 46 49 50 48 53 54 53 54 54 54 57 55 61 56 63 57 65 60 64 62 68 69 70 65 73 69 73 76 73 73 73 79 75 75 77 81 85 86 87 87 89 88 85 92 86 93 92 90 92 95 94 96 98...
output:
7
result:
ok single line: '7'
Test #29:
score: 9
Accepted
time: 42ms
memory: 15476kb
input:
3000 89 1 1 3 2 5 6 3 6 6 7 11 8 12 14 12 14 13 16 15 16 21 18 23 22 23 24 27 24 26 29 27 32 30 31 34 32 33 35 38 36 39 41 42 41 42 42 43 45 49 46 51 48 50 51 52 55 56 57 57 58 61 59 63 61 62 63 67 68 68 66 67 69 73 72 74 73 74 74 76 77 79 79 79 82 82 85 85 84 88 90 91 92 89 91 93 96 97 94 98 99 100...
output:
3975
result:
ok single line: '3975'
Test #30:
score: 9
Accepted
time: 32ms
memory: 14640kb
input:
3000 1699 1 1 3 2 4 5 3 2 4 9 7 5 13 10 12 12 10 11 16 18 19 21 18 18 23 22 26 22 26 23 31 27 29 28 28 29 33 31 35 34 34 36 38 39 39 45 41 43 46 49 50 48 53 54 53 54 54 54 57 55 61 56 63 57 65 60 64 62 68 69 70 65 73 69 73 76 73 73 73 79 75 75 77 81 85 86 87 87 89 88 85 92 86 93 92 90 92 95 94 96 98...
output:
3631
result:
ok single line: '3631'
Test #31:
score: 9
Accepted
time: 1ms
memory: 14720kb
input:
3000 2 1 4 3 6 5 8 7 10 9 12 11 14 13 16 15 18 17 20 19 22 21 24 23 26 25 28 27 30 29 32 31 34 33 36 35 38 37 40 39 42 41 44 43 46 45 48 47 50 49 52 51 54 53 56 55 58 57 60 59 62 61 64 63 66 65 68 67 70 69 72 71 74 73 76 75 78 77 80 79 82 81 84 83 86 85 88 87 90 89 92 91 94 93 96 95 98 97 100 99 102...
output:
9
result:
ok single line: '9'
Test #32:
score: 9
Accepted
time: 1ms
memory: 14896kb
input:
3000 89 1 1 3 2 5 6 3 6 6 7 11 8 12 14 12 14 13 16 15 16 21 18 23 22 23 24 27 24 26 29 27 32 30 31 34 32 33 35 38 36 39 41 42 41 42 42 43 45 49 46 51 48 50 51 52 55 56 57 57 58 61 59 63 61 62 63 67 68 68 66 67 69 73 72 74 73 74 74 76 77 79 79 79 82 82 85 85 84 88 90 91 92 89 91 93 96 97 94 98 99 100...
output:
13
result:
ok single line: '13'
Test #33:
score: 9
Accepted
time: 2ms
memory: 14716kb
input:
3000 1699 1 1 3 2 4 5 3 2 4 9 7 5 13 10 12 12 10 11 16 18 19 21 18 18 23 22 26 22 26 23 31 27 29 28 28 29 33 31 35 34 34 36 38 39 39 45 41 43 46 49 50 48 53 54 53 54 54 54 57 55 61 56 63 57 65 60 64 62 68 69 70 65 73 69 73 76 73 73 73 79 75 75 77 81 85 86 87 87 89 88 85 92 86 93 92 90 92 95 94 96 98...
output:
13
result:
ok single line: '13'
Subtask #3:
score: 0
Time Limit Exceeded
Test #34:
score: 13
Accepted
time: 22ms
memory: 20396kb
input:
2 1 1 200000 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1 2 1...
output:
200000
result:
ok single line: '200000'
Test #35:
score: 0
Time Limit Exceeded
input:
200000 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100...
output:
result:
Subtask #4:
score: 0
Time Limit Exceeded
Test #41:
score: 0
Time Limit Exceeded
input:
200000 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100...
output:
result:
Subtask #5:
score: 0
Time Limit Exceeded
Test #51:
score: 11
Accepted
time: 28ms
memory: 16336kb
input:
2 2 1 200000 2 1 2 1 1 2 2 1 1 2 1 2 2 1 1 2 1 2 2 1 2 1 1 2 2 1 2 1 1 2 1 2 2 1 1 2 1 2 2 1 2 1 1 2 1 2 1 2 2 1 2 1 2 1 2 1 1 2 2 1 2 1 2 1 1 2 2 1 1 2 1 2 1 2 1 2 2 1 2 1 2 1 2 1 1 2 2 1 1 2 1 2 1 2 2 1 1 2 1 2 1 2 1 2 2 1 2 1 2 1 1 2 1 2 1 2 2 1 2 1 1 2 1 2 1 2 1 2 1 2 1 2 1 2 2 1 1 2 1 2 2 1 2 1...
output:
100031
result:
ok single line: '100031'
Test #52:
score: 0
Time Limit Exceeded
input:
200000 200000 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 9...
output:
result:
Subtask #6:
score: 0
Time Limit Exceeded
Test #60:
score: 0
Time Limit Exceeded
input:
200000 1 1 1 3 3 2 5 3 4 6 9 3 3 9 14 13 4 2 18 9 3 11 20 13 7 13 14 6 13 2 22 14 5 9 19 7 28 22 10 37 37 26 15 39 18 31 18 19 22 6 4 22 29 30 43 38 33 39 19 10 14 25 35 5 3 50 34 13 60 44 31 47 67 27 52 26 48 30 18 63 76 80 49 16 39 16 59 77 60 26 84 50 54 36 75 77 72 77 1 45 13 20 86 19 56 9 47 82...
output:
result:
Subtask #7:
score: 0
Time Limit Exceeded
Test #97:
score: 0
Time Limit Exceeded
input:
200000 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101...