# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1031858 | 2024-07-23T08:09:01 Z | 김은성(#10960) | Monochrome Points (JOI20_monochrome) | C++17 | 0 ms | 348 KB |
#include <bits/stdc++.h> using namespace std; char s[400009]; int main(){ int n, i; scanf("%d", &n); scanf(" %s", s); vector<int> b, w; for(i=0; i<2*n; i++){ if(s[i] == 'B') b.push_back(i); else w.push_back(i); } int ans = 0; int temp = lower_bound(w.begin(), w.end(), b[0]+n) - w.begin(); for(int j=temp-20; j<=temp+20; j++){ int cnt = 0; for(i=0; i<n; i++){ cnt += n - min((w[(i+j+n)%n]-b[i]+6*n)%(2*n), 2*n - (w[(i+j+n)%n]-b[i]+6*n)%(2*n)); } ans = max(ans, n*(n-1)/2 - cnt/2); } printf("%d\n", ans); return 0; }
Compilation message
# | Verdict | Execution time | Memory | 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 | - |
# | Verdict | Execution time | Memory | 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 | - |
# | Verdict | Execution time | Memory | 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 | - |
# | Verdict | Execution time | Memory | 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 | - |