답안 #364747

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
364747 2021-02-09T21:08:25 Z nicolaalexandra Money (IZhO17_money) C++14
0 / 100
1500 ms 364 KB
#include <bits/stdc++.h>
#define DIM 1000010
using namespace std;

int aib[DIM],dp[DIM],v[DIM];
int n,i,maxi,val;

void update (int p, int val){
    for (;p<=maxi;p+=(p&-p))
        aib[p] += val;
}

int query (int p){
    int sol = 0;
    for (;p;p-=(p&-p))
        sol += aib[p];
    return sol;
}

int main (){

    //ifstream cin ("date.in");
    //ofstream cout ("date.out");

    cin>>n;
    for (i=1;i<=n;i++){
        cin>>v[i];
        maxi = max (maxi,v[i]);
    }

    int sol = 0;
    for (i=1;i<=n;i++){
        int j = i+1;
        while (j <= n && v[j] >= v[j-1] && query(v[j]-1) - query(v[i]) == 0)
            j++;

        sol++;

        /// acum fac update pt ca termin cu secv asta
        for (int poz=i;poz<=j;poz++)
            update (v[poz],1);
        i = j;
    }


    cout<<sol;

    return 0;
}
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 1575 ms 364 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 1575 ms 364 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 1575 ms 364 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 1575 ms 364 KB Time limit exceeded
2 Halted 0 ms 0 KB -