Submission #648974

#TimeUsernameProblemLanguageResultExecution timeMemory
648974tvladm2009Vudu (COCI15_vudu)C++14
0 / 140
398 ms65536 KiB
#include <bits/stdc++.h> #include <ext/pb_ds/assoc_container.hpp> #include <ext/pb_ds/tree_policy.hpp> using namespace __gnu_pbds; template<class T> using oset = tree<T, null_type, std::less<T>, rb_tree_tag,tree_order_statistics_node_update>; int const nmax = 1000000; long long v[5 + nmax], sp[5 + nmax]; signed main() { std::ios_base::sync_with_stdio(0); std::cin.tie(0); long long n, p; std::cin >> n; for(int i = 1;i <= n; i++) std::cin >> v[i]; std::cin >> p; for(int i = 1;i <= n; i++) { v[i] -= p; sp[i] = sp[i - 1] + v[i]; } oset<long long> s; s.insert(0); long long ans = 0; for(int i = 1;i <= n; i++) { // ans += s.order_of_key(sp[i]); // s.insert(sp[i]); } std::map<long long, long long> mp; mp[0]++; for(int i = 1;i <= n; i++) { ans += mp.count(sp[i]); mp[sp[i]]++; } std::cout << ans; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...