제출 #529005

#제출 시각아이디문제언어결과실행 시간메모리
529005OttoTheDinoInside information (BOI21_servers)C++17
0 / 100
52 ms4172 KiB
#include <bits/stdc++.h> using namespace std; #define rep(i,s,e) for (int i = s; i <= e; ++i) #define rrep(i,s,e) for (int i = s; i >= e; --i) #define pb push_back #define pf push_front #define fi first #define se second #define all(a) a.begin(), a.end() typedef long long ll; typedef pair<int, int> ii; typedef vector<ii> vii; typedef vector<int> vi; typedef vector<double> vd; typedef vector<string> vs; typedef vector<ll> vll; int main() { ios::sync_with_stdio(0); cin.tie(0); int n, k; cin >> n >> k; int rec_r[n+1], rec_l[n+1], prop_r[n+1], prop_l[n+1]; rep (i,1,n) rec_r[i] = rec_l[i] = prop_r[i] = prop_l[i] = i; rep (q,1,n+k-1) { char tp; cin >> tp; if (tp=='S') { int a, b; cin >> a >> b; if (b<a) swap(a,b); rec_r[a] = rec_r[b]; prop_l[rec_r[a]] = a; rec_l[b] = rec_l[a]; prop_r[rec_l[b]] = b; } else if (tp=='Q') { int a, d; cin >> a >> d; if (d<a && rec_l[a]<=d) cout << "yes\n"; else if (d>a && rec_r[a]>=d) cout << "yes\n"; else cout << "no\n"; } else { int d; cin >> d; cout << prop_r[d]-prop_l[d]+1 << "\n"; } } return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...