#include <bits/stdc++.h>
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
using namespace std;
using namespace __gnu_pbds;
template<typename T> using ordered_set = tree<T, null_type, less<T>, rb_tree_tag, tree_order_statistics_node_update>;
int main() {
int N;
cin >> N;
vector<int> v(N + 1);
vector<vector<int>> u(N + 1);
vector<vector<int>> w(N + 1);
for (int i = 1; i <= N; i++) {
cin >> v[i];
u[max(1, i - v[i])].push_back(i);
w[min(N, i)].push_back(i);
}
ordered_set<int> s;
long long x = 0;
for (int i = 1; i <= N; i++) {
for (int j : u[i]) {
s.insert(j);
}
x += s.order_of_key(min(N + 1, i + v[i] + 1)) - s.order_of_key(max(1, i - v[i])) - 1;
for (int j : w[i]) {
s.erase(j);
}
}
cout << x << endl;
return 0;
}
| Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
|---|---|---|---|---|---|---|---|
| subtask1 | 0/0 | ||||||
| 1 | Elfogadva | 3ms | 1872 KiB | ||||
| 2 | Elfogadva | 189ms | 31456 KiB | ||||
| subtask2 | 11/11 | ||||||
| 3 | Elfogadva | 189ms | 31456 KiB | ||||
| 4 | Elfogadva | 3ms | 2336 KiB | ||||
| 5 | Elfogadva | 7ms | 3472 KiB | ||||
| 6 | Elfogadva | 7ms | 3724 KiB | ||||
| 7 | Elfogadva | 7ms | 3996 KiB | ||||
| 8 | Elfogadva | 7ms | 4004 KiB | ||||
| 9 | Elfogadva | 7ms | 4340 KiB | ||||
| 10 | Elfogadva | 4ms | 4072 KiB | ||||
| 11 | Elfogadva | 7ms | 4216 KiB | ||||
| subtask3 | 12/12 | ||||||
| 12 | Elfogadva | 7ms | 4216 KiB | ||||
| 13 | Elfogadva | 164ms | 43812 KiB | ||||
| 14 | Elfogadva | 151ms | 44016 KiB | ||||
| 15 | Elfogadva | 162ms | 43960 KiB | ||||
| 16 | Elfogadva | 97ms | 47396 KiB | ||||
| 17 | Elfogadva | 158ms | 44328 KiB | ||||
| 18 | Elfogadva | 87ms | 48844 KiB | ||||
| 19 | Elfogadva | 142ms | 46088 KiB | ||||
| subtask4 | 31/31 | ||||||
| 20 | Elfogadva | 142ms | 46088 KiB | ||||
| 21 | Elfogadva | 137ms | 44408 KiB | ||||
| 22 | Elfogadva | 149ms | 44456 KiB | ||||
| 23 | Elfogadva | 90ms | 48472 KiB | ||||
| 24 | Elfogadva | 136ms | 45328 KiB | ||||
| 25 | Elfogadva | 344ms | 51564 KiB | ||||
| 26 | Elfogadva | 333ms | 48256 KiB | ||||
| 27 | Elfogadva | 317ms | 54488 KiB | ||||
| 28 | Elfogadva | 275ms | 45888 KiB | ||||
| 29 | Elfogadva | 293ms | 56692 KiB | ||||
| subtask5 | 46/46 | ||||||
| 30 | Elfogadva | 293ms | 56692 KiB | ||||
| 31 | Elfogadva | 174ms | 45116 KiB | ||||
| 32 | Elfogadva | 211ms | 45700 KiB | ||||
| 33 | Elfogadva | 263ms | 46296 KiB | ||||
| 34 | Elfogadva | 123ms | 48372 KiB | ||||
| 35 | Elfogadva | 256ms | 47880 KiB | ||||
| 36 | Elfogadva | 104ms | 49836 KiB | ||||
| 37 | Elfogadva | 277ms | 57980 KiB | ||||
| 38 | Elfogadva | 289ms | 58176 KiB | ||||
| 39 | Elfogadva | 337ms | 52832 KiB | ||||
| 40 | Elfogadva | 105ms | 50256 KiB | ||||
| 41 | Elfogadva | 324ms | 52484 KiB | ||||
| 42 | Elfogadva | 282ms | 46468 KiB | ||||
| 43 | Elfogadva | 293ms | 47652 KiB | ||||
| 44 | Elfogadva | 310ms | 55444 KiB | ||||
| 45 | Elfogadva | 310ms | 49280 KiB | ||||