제출 #60346

#제출 시각아이디문제언어결과실행 시간메모리
60346TenuunMoney (IZhO17_money)C++17
0 / 100
7 ms4444 KiB
#include<bits/stdc++.h>

using namespace std;

int tr[1000001];

void update(int ind, int val){
	while(ind<=1000000){
		tr[ind]+=val;
		ind+=ind&-ind;
	}
}

int get(int ind){
	int ans=0;
	while(ind){
		ans+=tr[ind];
		ind-=ind&-ind;
	}
	return ans;
}

int main(){
	ios_base::sync_with_stdio(false);
	cin.tie(NULL);
	memset(tr, 0, sizeof tr);
	int n, last=0, res=1, x;
	cin >> n;
	for(int i=0; i<n; i++){
		cin >> x;
		if(x<last || get(x)!=get(last)) res++;
		last=x;
		update(x, 1);
	}
	cout << res;
	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...