#include <bits/stdc++.h>
using namespace std;
#define forn(i,n) for (int i=0; i<n; ++i)
bitset<120000> a[120002];
void solve() {
int n,q; cin>>n>>q;
forn(i,n) a[i].set(i);
vector<string> a(n);
vector<int> last(n);
forn(i,n) last[i]=i;
forn(i,n) a[i]+=i;
forn(Q,n-1+q) {
char c;
cin>>c;
if (c=='S') {
int u,v; cin>>u>>v; --u,--v;
if (u!=last[u]) a[u]=a[last[u]];
if (v!=last[v]) a[v]=a[last[v]];
if (a[u].size()<a[v].size()) swap(u,v);
for (auto x:a[v]) a[u]+=x;
a[v]=a[u];
//last[u]=last[v]=u;
//for (auto x:a[u]) cout<<x<<' '; cout<<" ";
//for (auto x:a[v]) cout<<x<<' '; cout<<'\n';
} else if (c=='Q') {
int u,x; cin>>u>>x; --u, --x;
u=last[u];
cout << ((a[u].find(x)!=a[u].find(n))?"yes\n":"no\n");
} else {
int x; cin>>x; --x;
cout<<0<<'\n';
}
}
}
int32_t main() {
ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
solve();
return 0;
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
20 ms |
980 KB |
Output is correct |
2 |
Incorrect |
45 ms |
16908 KB |
Output isn't correct |
3 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
20 ms |
980 KB |
Output is correct |
2 |
Incorrect |
45 ms |
16908 KB |
Output isn't correct |
3 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
20 ms |
820 KB |
Output is correct |
2 |
Runtime error |
182 ms |
524288 KB |
Execution killed with signal 9 |
3 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
20 ms |
820 KB |
Output is correct |
2 |
Runtime error |
182 ms |
524288 KB |
Execution killed with signal 9 |
3 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
21 ms |
892 KB |
Output is correct |
2 |
Incorrect |
225 ms |
488432 KB |
Output isn't correct |
3 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
21 ms |
892 KB |
Output is correct |
2 |
Incorrect |
225 ms |
488432 KB |
Output isn't correct |
3 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
20 ms |
868 KB |
Output is correct |
2 |
Runtime error |
211 ms |
524288 KB |
Execution killed with signal 9 |
3 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
20 ms |
868 KB |
Output is correct |
2 |
Runtime error |
211 ms |
524288 KB |
Execution killed with signal 9 |
3 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
29 ms |
796 KB |
Output is correct |
2 |
Incorrect |
215 ms |
488556 KB |
Output isn't correct |
3 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
29 ms |
796 KB |
Output is correct |
2 |
Incorrect |
215 ms |
488556 KB |
Output isn't correct |
3 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
19 ms |
784 KB |
Output is correct |
2 |
Incorrect |
33 ms |
16876 KB |
Output isn't correct |
3 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
19 ms |
784 KB |
Output is correct |
2 |
Incorrect |
33 ms |
16876 KB |
Output isn't correct |
3 |
Halted |
0 ms |
0 KB |
- |