답안 #952888

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
952888 2024-03-25T04:29:54 Z irmuun Global Warming (CEOI18_glo) C++17
17 / 100
42 ms 7636 KB
#include<bits/stdc++.h>

using namespace std;

#define ll long long
#define pb push_back
#define ff first
#define ss second
#define all(s) s.begin(),s.end()
#define rall(s) s.rbegin(),s.rend()

int main(){
    ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0);
    ll n,x;
    cin>>n>>x;
    ll t[n+5];
    for(ll i=1;i<=n;i++){
        cin>>t[i];
    }
    ll pre[n+5];
    vector<ll>v;
    for(ll i=1;i<=n;i++){
        if(v.empty()||v.back()<t[i]){
            v.pb(t[i]);
            pre[i]=v.size();
        }
        else{
            ll x=lower_bound(all(v),t[i])-v.begin();
            v[x]=t[i];
            pre[i]=x+1;
        }
    }
    v.clear();
    ll suf[n+5];
    suf[n+1]=0;
    for(ll i=n;i>=1;i--){
        if(v.empty()||v.back()<-t[i]){
            v.pb(-t[i]);
            suf[i]=v.size();
        }
        else{
            ll x=lower_bound(all(v),-t[i])-v.begin();
            v[x]=-t[i];
            suf[i]=x+1;
        }
        if(i<n){
            suf[i]=max(suf[i],suf[i+1]);
        }
    }
    ll ans=suf[1];
    for(ll i=1;i<=n;i++){
        ans=max(ans,pre[i]+suf[i+1]);
    }
    cout<<ans;
}
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 1 ms 348 KB Output is correct
3 Incorrect 0 ms 456 KB Output isn't correct
4 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 1 ms 348 KB Output is correct
3 Incorrect 0 ms 456 KB Output isn't correct
4 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 1 ms 348 KB Output is correct
3 Incorrect 0 ms 456 KB Output isn't correct
4 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 42 ms 5336 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 9 ms 1628 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 20 ms 2652 KB Output is correct
2 Correct 23 ms 3780 KB Output is correct
3 Correct 40 ms 7008 KB Output is correct
4 Correct 18 ms 7116 KB Output is correct
5 Correct 9 ms 3804 KB Output is correct
6 Correct 20 ms 6780 KB Output is correct
7 Correct 19 ms 7636 KB Output is correct
8 Correct 15 ms 3672 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 1 ms 348 KB Output is correct
3 Incorrect 0 ms 456 KB Output isn't correct
4 Halted 0 ms 0 KB -