답안 #495993

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
495993 2021-12-20T10:23:36 Z ktkerem Preokret (COCI19_preokret) C++17
44 / 50
1 ms 204 KB
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
typedef __int128 vll;
typedef unsigned __int128 uvll;
ll _i=0;
#define ffn(x) _i=x
#define llll pair<ll , ll>
#define stitr set<ll>::iterator
#define fora(y,x) for(ll y=_i;x>y;y++)
#define pb push_back
#define pf push_front
#define debu cout << "hello\n"
#define fi first
#define sec second
#define all(a) a.begin() , a.end()
const ll limit = 1e13 + 7; 
const ll ous=1e5 + 5;
const ll dx[4] = {0 , -1 , 1 , 0} , dy[4] = {1,0,0,-1};
void solve(){
    ll n;cin >> n;
    ll ar[n];ll ft=0 , st=0 , tc = 1;
    fora(i,n){
        cin >> ar[i];
        if(ar[i] == 1){
            ft++;
        }
        else{
            st++;
        }
        if(ft == st){
            tc++;
        }
    }
    vector<ll> tp(n+1 , 0);
    cout << ft << " " << st << "\n";
    cout << tc << "\n";
    ft = st =0;
    if(ar[0] == 1){
        ft++;
    }
    else{
        st++;
    }
    ll mx = 0;
    for(ll i = 1;n>i;i++){
        if(ar[i] == 1){
            ft++;
            if(ar[i-1] == 1 && tp[i-1] != 0){
                tp[i] = tp[i-1]+1;
            }
            else if(st >= ft){
                tp[i] = 1;
            }
            else{
                tp[i]=0;
            }
        }
        else{
            st++;
            if(ar[i-1] == 2 && tp[i-1] != 0){
                tp[i] = tp[i-1]+1;
            }
            else if(st <= ft){
                tp[i] = 1;
            }
            else{
                tp[i]=0;
            }
        }
        mx = max(tp[i] , mx);
    }
    cout << mx << "\n";
    return;/**/
}
signed main(){
    ios_base::sync_with_stdio(false);cin.tie(NULL);
    ll t=1;
    //cin >> t;
    while(t--){
        solve();
    }
    return 0; 
}
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 204 KB Output is correct
2 Correct 0 ms 204 KB Output is correct
3 Correct 1 ms 204 KB Output is correct
4 Correct 0 ms 204 KB Output is correct
5 Correct 0 ms 204 KB Output is correct
6 Correct 0 ms 204 KB Output is correct
7 Partially correct 0 ms 204 KB Output is partially correct
8 Correct 0 ms 204 KB Output is correct
9 Partially correct 0 ms 204 KB Output is partially correct
10 Correct 0 ms 204 KB Output is correct