제출 #1344393

#제출 시각아이디문제언어결과실행 시간메모리
1344393kokokaiMonochrome Points (JOI20_monochrome)C++20
100 / 100
13 ms4056 KiB
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
#define fi first
#define se second
#define int long long
#define task "text"
const int N = 6e5+5;
string s;
int pre[N];
int n;

signed main() {
    ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);
    if(fopen(task".inp","r")){
        freopen(task".inp","r",stdin);
    }
    cin>>n;
    cin>>s;
    for(int i=0;i<n+n;i++){
        if(s[i] == 'B') pre[i]+=1;
        else{
            int ni=(i+n)%(2*n);
            pre[ni]--;
        }
    }
    for(int i=1;i<n+n;i++) pre[i]+=pre[i-1];
    sort(pre,pre+n+n);
    int med=pre[n-1];
    ll ans=n*(n-1);
    for(int i=0;i<n+n;i++){
        ans -= abs(med-pre[i]);
    }
    cout<<ans/2<<'\n';
}

컴파일 시 표준 에러 (stderr) 메시지

monochrome.cpp: In function 'int main()':
monochrome.cpp:16:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   16 |         freopen(task".inp","r",stdin);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...