Submission #980304

# Submission time Handle Problem Language Result Execution time Memory
980304 2024-05-12T04:25:26 Z dyc123 Tales of seafaring (POI13_mor) C++14
100 / 100
1242 ms 102400 KB
#include <bits/stdc++.h>
using namespace std;
#define ll long long

const int INF = 10001;

void solve() {
    int n, m, k;
    cin >> n >> m >> k;
    vector<int> adj[n];
    for(int i = 0; i < m; i++) {
        int a, b; cin >> a >> b;
        adj[--a].push_back(--b);
        adj[b].push_back(a);
    }
    short dist[n][n][2];
    memset(dist, 0x3f, sizeof(dist));
    for(int i = 0; i < n; i++) {
        queue<array<int, 2>> q;
        q.push({i, 0});
        dist[i][i][0] = 0;
        while(!q.empty()) {
            auto [u, p] = q.front();
            q.pop();
            for(int v: adj[u]) {
                if(dist[i][v][p ^ 1] < INF) continue;
                dist[i][v][p ^ 1] = dist[i][u][p] + 1;
                q.push({v, p ^ 1});
            }
        }
    }
    while(k--) {
        int a, b, c;
        cin >> a >> b >> c;
        --a; --b;
        if(dist[a][b][c & 1] > INF || dist[a][b][c & 1] > c || (a == b && adj[a].size() == 0)) {
            cout << "NIE" << '\n';
        } else {
            cout << "TAK" << '\n';
        }
    }
}

int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);
    // freopen("io.out", "w", stdout);

    int t = 1;
    // cin >> t;
    while(t--) solve();
    return 0;
}

Compilation message

mor.cpp: In function 'void solve()':
mor.cpp:23:18: warning: structured bindings only available with '-std=c++17' or '-std=gnu++17'
   23 |             auto [u, p] = q.front();
      |                  ^
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 199 ms 19784 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
2 Correct 1 ms 348 KB Output is correct
3 Correct 1 ms 348 KB Output is correct
4 Correct 206 ms 19824 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
2 Correct 1 ms 348 KB Output is correct
3 Correct 1 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 8 ms 856 KB Output is correct
2 Correct 1 ms 600 KB Output is correct
3 Correct 15 ms 1464 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 23 ms 1880 KB Output is correct
2 Correct 7 ms 2908 KB Output is correct
3 Correct 38 ms 2904 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 88 ms 9304 KB Output is correct
2 Correct 7 ms 2652 KB Output is correct
3 Correct 233 ms 16252 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 551 ms 20344 KB Output is correct
2 Correct 21 ms 16472 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1130 ms 67344 KB Output is correct
2 Correct 67 ms 16980 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1000 ms 102400 KB Output is correct
2 Correct 219 ms 94928 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1242 ms 102396 KB Output is correct
2 Correct 427 ms 86584 KB Output is correct