제출 #89961

#제출 시각아이디문제언어결과실행 시간메모리
89961vexVudu (COCI15_vudu)C++14
42 / 140
646 ms37160 KiB
#include <bits/stdc++.h> #define maxn 1000005 #define plli pair<long long,int> using namespace std; int n; plli a[maxn]; long long p; int tree[maxn]={0}; int manji(int x) { x--; int sol=0; while(x>0) { sol+=tree[x]; x-=x&-x; } return sol; } void update(int x) { while(x<=n) { tree[x]++; x+=x&-x; } } int main() { //ios_base::sync_with_stdio(false); //cin.tie(nullptr); //cout.tie(nullptr); cin>>n; a[0]={0,0}; for(int i=0;i<n;i++) { cin>>a[i+1].first; a[i+1].first+=a[i].first; a[i+1].second=i+1; } cin>>p; for(int i=0;i<=n;i++) { a[i].first-=p*a[i].second; } sort(a,a+n+1); int sol=0; for(int i=0;i<=n;i++)a[i].second++; for(int i=0;i<=n;i++) { sol+=manji(a[i].second); update(a[i].second); } cout<<sol<<endl; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...