Submission #1031051

#TimeUsernameProblemLanguageResultExecution timeMemory
1031051belgianbotBitaro’s Party (JOI18_bitaro)C++14
7 / 100
283 ms524288 KiB
#include <bits/stdc++.h> using namespace std; int N, M, Q; vector<vector<int>> adj; int main() { ios::sync_with_stdio(false); cin.tie(NULL); cin >> N >> M >> Q; adj.resize(N); for (int i = 0; i < M; i++) { int a, b; cin >> a >> b; a--; b--; adj[b].push_back(a); } vector<vector<int>> sol(N); for (int i = 0; i < N; i++) { sol[i].resize(N, INT_MIN); sol[i][i] = 0; for (int j : adj[i]) { for (int k = 0; k <= j; k++) sol[i][k] = max(sol[i][k], sol[j][k] + 1); } } while (Q--) { int T, Y; cin >> T >> Y; T--; vector<bool> busy(N, false); for (int i = 0; i < Y; i++) { int a; cin >> a; a--; busy[a] = true; } int ans = -1; for (int i = 0; i <= T; i++) { if (!busy[i]) { ans = max(ans, sol[T][i]); } } cout << ans << '\n'; } return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...