#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 |