# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
935555 | 2024-02-29T09:08:18 Z | dilanyan | Kamenčići (COCI21_kamencici) | C++17 | 0 ms | 348 KB |
//-------------dilanyan------------\\ #define _CRT_SECURE_NO_WARNINGS #include<bits/stdc++.h> #include<stdio.h> using namespace std; //------------------Kargpefines--------------------\\ #define ll long long #define pb push_back #define all(u) (u).begin(), (u).end() #define pqueue priority_queue #define upper upper_bound #define lower lower_bound #define umap unordered_map #define uset unordered_set void KarginSet(string name = "") { ios_base::sync_with_stdio(false); cin.tie(NULL); if (name.size()) { freopen((name + ".in").c_str(), "r", stdin); freopen((name + ".out").c_str(), "w", stdout); } } //-------------------KarginConstants------------------\\ const ll mod = 1000000007; const ll inf = 1e9; //-------------------KarginCode-----------------------\\ const int N = 200005; void KarginSolve() { int n, k; cin >> n >> k; string str; cin >> str; int s = 0, e = str.size() - 1; int c1 = 0, c2 = 0; bool flag = true; while (s <= e) { if (flag) { if (str[s] == 'P') s++; else if (str[e] == 'P') e--; else { int sx = 0, ex = 0; for (int i = s; i <= e;i++) { if (str[i] == 'P') break; sx++; } for (int i = e;i >= s;i--) { if (str[i] == 'P') break; ex++; } if (sx == e - s + 1) { c1++, s++; } else { if (sx & 1) e--, c1++; else s++, c1++; } } } else { if (str[s] == 'P') s++; else if (str[e] == 'P') e--; else { int sx = 0, ex = 0; for (int i = s; i <= e;i++) { if (str[i] == 'P') break; sx++; } for (int i = e;i >= s;i--) { if (str[i] == 'P') break; ex++; } if (sx == e - s + 1) { c2++, s++; } else { if (sx & 1) e--, c2++; else s++, c2++; } } } if (c1 == k || c2 == k) break; flag = !flag; } if (c1 == k) cout << "NE\n"; else cout << "DA\n"; } int main() { KarginSet(); int test = 1; //cin >> test; while (test--) { KarginSolve(); } return 0; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 348 KB | Output is correct |
2 | Incorrect | 0 ms | 348 KB | Output isn't correct |
3 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 348 KB | Output is correct |
2 | Incorrect | 0 ms | 348 KB | Output isn't correct |
3 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 348 KB | Output is correct |
2 | Incorrect | 0 ms | 348 KB | Output isn't correct |
3 | Halted | 0 ms | 0 KB | - |