CSES - Datatähti 2024 loppu - Results
Submission details
Task:Peli
Sender:EeliH
Submission time:2024-01-20 15:17:53 +0200
Language:C++ (C++17)
Status:READY
Result:0
Feedback
groupverdictscore
#10
#20
Test results
testverdicttimegroup
#1ACCEPTED0.00 s1, 2details
#2--1, 2details
#3--2details
#4--1, 2details
#5--1, 2details
#6--2details
#7--2details
#80.94 s1, 2details
#9--2details
#10--2details

Code

#include <bits/stdc++.h>
using namespace std;

vector<int> teleportit[10000];
int (etaisyydet[2500])[2500];
int n, m, q;

bool paasee(int a, int b, int c)
{
    vector<int> next;
    vector<int> nextnext;

    if (a == b && c == 0) {
        return true;
    }

    for (auto neighbor : teleportit[a]) {
        next.push_back(neighbor);
    }

    while (c > 0) {
        c--;

        for (auto neighbor : next) {
            if (c == 0 && neighbor == b) {
                return true;
            }

            for (auto neighneighbor : teleportit[neighbor]) {
                nextnext.push_back(neighneighbor);
            }
        }

        next = nextnext;
        nextnext = {};
    }

    return false;
}

int main()
{
    cin >> n >> m >> q;

    for (int i = 0; i < m; i++) {
        int a, b;
        cin >> a >> b;

        teleportit[a].push_back(b);
        teleportit[b].push_back(a);
    }

    for (int i = 0; i < q; i++) {
        int a, b, c;
        cin >> a >> b >> c;

        if (paasee(a, b, c)) {
            cout << "YES" << endl;
        } else {
            cout << "NO" << endl;
        }
    }
}

Test details

Test 1

Group: 1, 2

Verdict: ACCEPTED

input
2 1 100
1 2
1 1 0
1 2 0
2 1 0
...

correct output
YES
NO
NO
YES
NO
...

user output
YES
NO
NO
YES
NO
...
Truncated

Test 2

Group: 1, 2

Verdict:

input
50 49 100
33 34
7 8
49 50
47 48
...

correct output
NO
NO
NO
NO
NO
...

user output
(empty)

Test 3

Group: 2

Verdict:

input
2500 2499 100000
821 822
2351 2352
752 753
832 833
...

correct output
NO
YES
YES
NO
NO
...

user output
(empty)

Test 4

Group: 1, 2

Verdict:

input
12 12 100
9 10
2 3
1 12
1 2
...

correct output
NO
NO
NO
NO
NO
...

user output
(empty)

Test 5

Group: 1, 2

Verdict:

input
11 11 100
10 11
7 8
1 2
5 6
...

correct output
YES
YES
YES
YES
YES
...

user output
(empty)

Test 6

Group: 2

Verdict:

input
2500 2500 100000
1936 1937
1884 1885
751 752
831 832
...

correct output
NO
YES
YES
NO
NO
...

user output
(empty)

Test 7

Group: 2

Verdict:

input
2499 2499 100000
821 822
2351 2352
752 753
832 833
...

correct output
YES
YES
YES
YES
YES
...

user output
(empty)

Test 8

Group: 1, 2

Verdict:

input
50 99 100
40 47
34 50
44 47
15 16
...

correct output
YES
YES
YES
YES
YES
...

user output
(empty)

Test 9

Group: 2

Verdict:

input
2500 4999 100000
1191 2361
251 399
1026 2300
82 1655
...

correct output
YES
YES
YES
YES
YES
...

user output
(empty)

Test 10

Group: 2

Verdict:

input
2500 4999 100000
2023 2218
23 51
1020 1272
11 114
...

correct output
YES
YES
YES
YES
YES
...

user output
(empty)