6405 | 2023-11-28 09:59:05 | Ghost | Legkisebb nem osztható | cpp17 | Időlimit túllépés 0/100 | 3.101s | 15784 KiB |
#include <iostream>
#include <vector>
#include <set>
#include <queue>
#include <stack>
using namespace std;
int main()
{
int n, temp1, temp2, i;
cin >> n;
vector<int> value(n);
for (i = 0; i < n; i++) {
cin >> value[i];
}
vector<vector<int>> map(n);
for (i = 0; i < (n - 1); i++) {
cin >> temp1 >> temp2;
temp1--; temp2--;
map[temp1].push_back(temp2);
map[temp2].push_back(temp1);
}
int k, goal, start, j;
cin >> k;
set<int> been;
queue<int> steps;
vector<int> last(n);
for (i = 0; i < k; i++) {
cin >> start >> goal;
start--; goal--;
last[start] = -1;
been.clear();
been.insert(start);
steps.push(start);
int node;
while (steps.size() > 0) {
node = steps.front();
steps.pop();
for (j = 0; j < map[node].size(); j++) {
if (!been.count(map[node][j])) {
steps.push(map[node][j]);
last[map[node][j]] = node;
}
}
been.insert(node);
}
bool correct = false;
int out = 2;
while (!correct) {
node = goal;
while (node != -1) {
if (out <= value[node]) {
if (out % value[node] == 0 || (out > 2 && out % 2 == 0)) {
correct = false;
break;
}
correct = true;
node = last[node];
}
else {
break;
}
}
if (correct) {
break;
}
out++;
}
cout << out << "\n";
}
}
//9
//7 25 8 4 1000000 6 11 3 2
//5 7
//5 1
//5 6
//7 3
//1 2
//1 4
//6 8
//2 9
//3
//8 9
//3 8
//4 9
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
subtask1 | 0/0 | ||||||
1 | Időlimit túllépés | 3.069s | 1024 KiB | ||||
subtask2 | 0/5 | ||||||
2 | Időlimit túllépés | 3.073s | 1300 KiB | ||||
3 | Időlimit túllépés | 3.032s | 1564 KiB | ||||
4 | Időlimit túllépés | 3.078s | 2424 KiB | ||||
5 | Elfogadva | 30ms | 2668 KiB | ||||
6 | Elfogadva | 71ms | 2888 KiB | ||||
7 | Elfogadva | 209ms | 3024 KiB | ||||
8 | Elfogadva | 330ms | 3328 KiB | ||||
9 | Elfogadva | 331ms | 3268 KiB | ||||
10 | Időlimit túllépés | 3.058s | 3524 KiB | ||||
11 | Időlimit túllépés | 3.065s | 3648 KiB | ||||
subtask3 | 0/5 | ||||||
12 | Időlimit túllépés | 3.071s | 3488 KiB | ||||
13 | Időlimit túllépés | 3.072s | 3624 KiB | ||||
14 | Időlimit túllépés | 3.076s | 3764 KiB | ||||
15 | Elfogadva | 28ms | 3752 KiB | ||||
16 | Elfogadva | 68ms | 3860 KiB | ||||
17 | Elfogadva | 202ms | 3888 KiB | ||||
18 | Elfogadva | 326ms | 4140 KiB | ||||
19 | Elfogadva | 328ms | 4048 KiB | ||||
20 | Időlimit túllépés | 3.073s | 3332 KiB | ||||
21 | Időlimit túllépés | 3.046s | 3124 KiB | ||||
subtask4 | 0/10 | ||||||
22 | Időlimit túllépés | 3.076s | 4268 KiB | ||||
23 | Időlimit túllépés | 3.071s | 4584 KiB | ||||
24 | Időlimit túllépés | 3.046s | 9284 KiB | ||||
25 | Időlimit túllépés | 3.062s | 12956 KiB | ||||
26 | Időlimit túllépés | 3.058s | 14416 KiB | ||||
27 | Időlimit túllépés | 3.065s | 14520 KiB | ||||
subtask5 | 0/10 | ||||||
28 | Időlimit túllépés | 3.035s | 4780 KiB | ||||
29 | Időlimit túllépés | 3.04s | 5216 KiB | ||||
30 | Időlimit túllépés | 3.049s | 9984 KiB | ||||
31 | Időlimit túllépés | 3.066s | 13700 KiB | ||||
32 | Időlimit túllépés | 3.071s | 15012 KiB | ||||
33 | Időlimit túllépés | 3.062s | 14952 KiB | ||||
subtask6 | 0/10 | ||||||
34 | Elfogadva | 330ms | 4728 KiB | ||||
35 | Időlimit túllépés | 3.046s | 4936 KiB | ||||
36 | Időlimit túllépés | 3.062s | 6628 KiB | ||||
37 | Időlimit túllépés | 3.073s | 10008 KiB | ||||
38 | Időlimit túllépés | 3.075s | 13700 KiB | ||||
39 | Időlimit túllépés | 3.051s | 14948 KiB | ||||
40 | Időlimit túllépés | 3.053s | 14876 KiB | ||||
41 | Időlimit túllépés | 3.073s | 14808 KiB | ||||
subtask7 | 0/15 | ||||||
42 | Elfogadva | 328ms | 4880 KiB | ||||
43 | Időlimit túllépés | 3.062s | 4920 KiB | ||||
44 | Időlimit túllépés | 3.069s | 6808 KiB | ||||
45 | Időlimit túllépés | 3.071s | 10212 KiB | ||||
46 | Időlimit túllépés | 3.059s | 14016 KiB | ||||
47 | Időlimit túllépés | 3.066s | 15224 KiB | ||||
48 | Időlimit túllépés | 3.085s | 15104 KiB | ||||
49 | Időlimit túllépés | 3.058s | 15288 KiB | ||||
50 | Időlimit túllépés | 3.026s | 15168 KiB | ||||
51 | Időlimit túllépés | 3.055s | 12604 KiB | ||||
52 | Időlimit túllépés | 3.055s | 12688 KiB | ||||
53 | Időlimit túllépés | 3.046s | 12668 KiB | ||||
54 | Időlimit túllépés | 3.066s | 12768 KiB | ||||
55 | Időlimit túllépés | 3.063s | 12756 KiB | ||||
56 | Időlimit túllépés | 3.071s | 12800 KiB | ||||
subtask8 | 0/20 | ||||||
57 | Időlimit túllépés | 3.062s | 5356 KiB | ||||
58 | Időlimit túllépés | 3.071s | 6792 KiB | ||||
59 | Időlimit túllépés | 3.055s | 8144 KiB | ||||
60 | Időlimit túllépés | 3.066s | 10324 KiB | ||||
61 | Időlimit túllépés | 3.066s | 15000 KiB | ||||
62 | Időlimit túllépés | 3.059s | 15096 KiB | ||||
63 | Időlimit túllépés | 3.068s | 15140 KiB | ||||
64 | Időlimit túllépés | 3.062s | 15324 KiB | ||||
65 | Időlimit túllépés | 3.058s | 15412 KiB | ||||
66 | Időlimit túllépés | 3.039s | 15604 KiB | ||||
subtask9 | 0/25 | ||||||
67 | Időlimit túllépés | 3.071s | 5592 KiB | ||||
68 | Időlimit túllépés | 3.069s | 6968 KiB | ||||
69 | Időlimit túllépés | 3.062s | 8332 KiB | ||||
70 | Időlimit túllépés | 3.069s | 10964 KiB | ||||
71 | Időlimit túllépés | 3.101s | 15348 KiB | ||||
72 | Időlimit túllépés | 3.075s | 15392 KiB | ||||
73 | Időlimit túllépés | 3.101s | 15588 KiB | ||||
74 | Időlimit túllépés | 3.078s | 15532 KiB | ||||
75 | Időlimit túllépés | 3.082s | 15720 KiB | ||||
76 | Időlimit túllépés | 3.075s | 15396 KiB | ||||
77 | Időlimit túllépés | 3.055s | 15584 KiB | ||||
78 | Időlimit túllépés | 3.048s | 15456 KiB | ||||
79 | Időlimit túllépés | 3.042s | 15588 KiB | ||||
80 | Időlimit túllépés | 3.049s | 15696 KiB | ||||
81 | Időlimit túllépés | 3.033s | 15784 KiB | ||||
82 | Időlimit túllépés | 3.051s | 15284 KiB | ||||
83 | Időlimit túllépés | 3.055s | 15524 KiB |