Submission #364746

#TimeUsernameProblemLanguageResultExecution timeMemory
364746nicolaalexandraMoney (IZhO17_money)C++14
0 / 100
1 ms364 KiB
#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 (poz,1); i = j; } cout<<sol; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...