Submission #1265754

#TimeUsernameProblemLanguageResultExecution timeMemory
1265754canhnam357Bitaro’s Party (JOI18_bitaro)C++20
14 / 100
2095 ms2524 KiB
#include <bits/stdc++.h>
using namespace std;
int main()
{
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    int n, m, q;
    cin >> n >> m >> q;
    vector<pair<int, int>> e(m);
    for (auto &[u, v] : e) cin >> v >> u;
    sort(e.rbegin(), e.rend());
    while (q--) {
        int t;
        cin >> t;
        int k;
        cin >> k;
        vector<int> c(k);
        for (int &i : c) cin >> i;
        vector<int> dp(n + 1, -1);
        dp[t] = 0;
        for (auto [u, v] : e) {
            if (dp[u] >= 0) {
                dp[v] = max(dp[v], dp[u] + 1);
            }
        }
        int ans = -1, j = 0;
        for (int i = 1; i <= n; i++) {
            if (j < k && c[j] == i) j++;
            else if (dp[i] >= 0) {
                ans = max(ans, dp[i]);
            }
        }
        cout << ans << '\n';
    }   
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...