Submission #99513

# Submission time Handle Problem Language Result Execution time Memory
99513 2019-03-04T14:07:41 Z rzbt Money (IZhO17_money) C++14
0 / 100
3 ms 384 KB
#include <bits/stdc++.h>
#define MAXN 1000006


using namespace std;

int n;
int bit[MAXN];
vector<int> niz;
void dodaj(int p,int x){
    for(;p<MAXN;p+=(-p)&p)
        bit[p]+=x;
}
int dobij(int p){
    int z=0;
    for(;p>0;p-=(-p)&p)
        z+=bit[p];
    return z;
}
int res=0;


int main()
{
    scanf("%d", &n);
    for(int i=1;i<=n;i++){
        int t;
        scanf("%d", &t);
        if(niz.empty()){
            niz.push_back(t);
            res=1;
            continue;
        }
        if(t<niz.back() || dobij(t-1)>dobij(niz[0]+1)){
            res++;
            for(auto x:niz)dodaj(x,1);
            niz.clear();
            niz.push_back(t);
        }else{
            niz.push_back(t);
        }

    }
    printf("%d",res);
    return 0;
}

Compilation message

money.cpp: In function 'int main()':
money.cpp:25:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d", &n);
     ~~~~~^~~~~~~~~~
money.cpp:28:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d", &t);
         ~~~~~^~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 3 ms 384 KB Output is correct
2 Incorrect 2 ms 384 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 3 ms 384 KB Output is correct
2 Incorrect 2 ms 384 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 3 ms 384 KB Output is correct
2 Incorrect 2 ms 384 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 3 ms 384 KB Output is correct
2 Incorrect 2 ms 384 KB Output isn't correct
3 Halted 0 ms 0 KB -