Submission #1326713

#TimeUsernameProblemLanguageResultExecution timeMemory
1326713riafhasan2010Bitaro’s Party (JOI18_bitaro)C++17
0 / 100
1 ms332 KiB
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;

int main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  int n, m, query; cin >> n >> m >> query;
  vector<vector<int>> g(n + 1);
  for (int i = 1; i <= m; i++) {
    int u, v; cin >> u >> v;
    g[v].push_back(u);
  }
  while (query--) {
    int p, j; cin >> p >> j;
    vector<bool> vis(n + 1, 1);
    for (int i = 1; i <= j; i++) {
      int x; cin >> x;
      vis[x] = 0;
    }
    vector<int> dist(n + 1, -1);
    for (int i = 1; i <= n; i++) {
      if (vis[i]) dist[i] = max(dist[i], 0);
      if (dist[i] != -1) {
        for (auto v : g[i]) {
          dist[v] = max(dist[v], dist[i] + 1);
        }
      }
    }
    cout << dist[p] << '\n';
  }
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...