Submission #950163

#TimeUsernameProblemLanguageResultExecution timeMemory
950163vjudge1Vudu (COCI15_vudu)C++17
42 / 140
583 ms65536 KiB
#include <bits/stdc++.h> #include <ext/pb_ds/assoc_container.hpp> #include <ext/pb_ds/tree_policy.hpp> #define ll long long #define ff first #define ss second #define pb push_back #define all(x) x.begin(),x.end() using namespace std; using namespace __gnu_pbds; #define ordered_set tree<pair <ll,int> , null_type,less<pair <ll,int>>, rb_tree_tag,tree_order_statistics_node_update> signed main(){ ios_base::sync_with_stdio(); cin.tie(0);cout.tie(0); int n,p; cin>>n; vector <int> a(n); for(int i=0;i<n;i++)cin>>a[i]; cin>>p; ordered_set st; ll sum=0; ll ans=0,x=0; for(int i=0;i<n;i++){ x=sum-(ll)(i*p); st.insert({x,i}); sum+=(ll)a[i]; x=sum-(ll)(p*i)-p; ans+=st.order_of_key({x,1e9}); } cout<<ans<<"\n"; } /* */
#Verdict Execution timeMemoryGrader output
Fetching results...