Submission #515651

#TimeUsernameProblemLanguageResultExecution timeMemory
515651bibabasKamenčići (COCI21_kamencici)C++14
70 / 70
1 ms204 KiB
//#pragma GCC optimize("Ofast") //#pragma GCC optimize("no-stack-protector") //#pragma GCC optimize("unroll-loops") //#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx") //#pragma GCC optimize("inline") //#pragma GCC optimize("-fgcse") //#pragma GCC optimize("-fgcse-lm") //#pragma GCC optimize("-fipa-sra") //#pragma GCC optimize("-ftree-pre") //#pragma GCC optimize("-ftree-vrp") //#pragma GCC optimize("-fpeephole2") //#pragma GCC optimize("-ffast-math") //#pragma GCC optimize("-fsched-spec") //#pragma GCC optimize("unroll-loops") //#pragma GCC optimize("-falign-jumps") //#pragma GCC optimize("-falign-loops") //#pragma GCC optimize("-falign-labels") //#pragma GCC optimize("-fdevirtualize") //#pragma GCC optimize("-fcaller-saves") //#pragma GCC optimize("-fcrossjumping") //#pragma GCC optimize("-fthread-jumps") //#pragma GCC optimize("-funroll-loops") ////#pragma GCC optimize("-fwhole-program") //#pragma GCC optimize("-freorder-blocks") //#pragma GCC optimize("-fschedule-insns") //#pragma GCC optimize("inline-functions") //#pragma GCC optimize("-ftree-tail-merge") //#pragma GCC optimize("-fschedule-insns2") ////#pragma GCC optimize("-fstrict-aliasing") //#pragma GCC optimize("-fstrict-overflow") //#pragma GCC optimize("-falign-functions") ////#pragma GCC optimize("-fcse-skip-blocks") //#pragma GCC optimize("-fcse-follow-jumps") ////#pragma GCC optimize("-fsched-llerblock") //#pragma GCC optimize("-fpartial-inlining") //#pragma GCC optimize("no-stack-protector") //#pragma GCC optimize("-freorder-functions") //#pragma GCC optimize("-findirect-inlining") //#pragma GCC optimize("-fhoist-adjacent-loads") //#pragma GCC optimize("-frerun-cse-after-loop") ////#pragma GCC optimize("-inline-small-functions") //#pragma GCC optimize("-finline-small-functions") //#pragma GCC optimize("-ftree-switch-conversion") //#pragma GCC optimize("-foptimize-sibling-calls") //#pragma GCC optimize("-fexpensive-optimizations") ////#pragma GCC optimize("-funsafe-loop-optimizations") //#pragma GCC optimize("inline-functions-called-once") ////#pragma GCC optimize("-fdelete-null-poller-checks") #include <bits/stdc++.h> using namespace std; #define ll long long #define ull unsigned ll #define vi vector<ll> #define vvi vector<vi> #define all(x) x.begin(), x.end() #define pb push_back #define mp make_pair #define ld long double #define pii pair<ll, ll> #define mt make_tuple #define mn(a, b) a = min(a, b) #define mx(a, b) a = max(a, b) #define base complex<ld> #define START_DEPTH 18 using namespace std; const ll INF = (ll)2e9; const ll inf = (ll)1e18; const ld eps = (ld)1e-12; const ll mod = (ll)1e9 + 7; const ll mod2 = (ll)1e9 + 7; const ll MAXN = (ll)350 + 10; const ll MAXC = (ll)1e5 + 10; const ll MAXE = (ll)1e5 + 10; const ll MAXLOG = (ll)20; const ll asci = (ll)256; const ll block = 316; const ld PI = acos(-1LL); //const ld e = 2.7182818284; //#include <ext/pb_ds/assoc_container.hpp> //#include <ext/pb_ds/tree_policy.hpp> //using namespace __gnu_pbds; //typedef tree< // ll, // null_type, // less<ll>, // rb_tree_tag, // tree_order_statistics_node_update> // ordered_set; pii operator +(const pii &a, const pii &b) { return {a.first + b.first, a.second + b.second}; } template <class T> istream& operator >>(istream &in, vector<T> &arr){ for (T &cnt : arr) { in >> cnt; } return in; }; void solve() { int n, k; cin >> n >> k; string s; cin >> s; int l = 0, r = n - 1; int turn = 0; vi sum(2); while (l <= r) { int x = 1; if (s[l] == 'P') l++; else if (s[r] == 'P') r--; else if (l + 1 <= r && s[l] == 'C' && s[l + 1] == 'C') { l++; sum[turn]++; } else if (r - 1 >= l && s[r - 1] == 'C' && s[r] == 'C'){ r--; sum[turn]++; } else { l++, sum[turn]++; } if (sum[turn] == k) { if (turn) cout << "DA\n"; else cout << "NE\n"; return; } turn ^= x; } } signed main() { srand(time(0LL)); #ifdef LOCAL freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout); #else ios_base::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr); #endif cout.precision(30); //#define TEST #ifdef TEST int k, q, t; cin >> k >> q >> t; while (t--) #endif solve(); return 0LL; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...