This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define pii pair<int,int>
#define vb vector<bool>
#define vi vector<int>
#define vpii vector<pii>
#define vvb vector<vb>
#define vvi vector<vi>
#define vvpii vector<vpii>
void dfs(vvpii & adj, int v, int t, int source, vvb & reachable) {
reachable[source][v] = true;
for (pii e : adj[v]) {
if (e.second < t) dfs(adj, e.first, e.second, source, reachable);
}
}
int main() {
ios::sync_with_stdio(false);
cin.tie(0); cout.tie(0);
int N, K;
cin >> N >> K;
int last = 0;
vi added(N, INT_MAX);
added[0] = 0;
for (int t = 1; t < N + K; ++t) {
string command;
cin >> command;
if (command == "S") {
int a, b;
cin >> a >> b;
--a; --b;
if (a > b) swap(a, b);
added[b] = ++last;
} else if (command == "Q") {
int a,d;
cin >> a >> d;
--a; --d;
if (a == d) cout << "yes\n";
else if (added[a] != INT_MAX && added[d] != INT_MAX && (a == 0 || added[d] <= added[a])) cout << "yes\n";
else cout << "no\n";
} else {
int d;
cin >> d;
--d;
int cnt = 1;
if (d == 0) {
cnt += last;
} else {
if (added[d] != INT_MAX) {
cnt += last - added[d] + 1;
}
}
cout << cnt << "\n";
}
}
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |