#include <stdio.h>
#include <stdlib.h>
#define N 200000
void hashclear(void);
void hash_inc(long int);
long int hash_getc(long int);
 
typedef struct {
    long int value;
    long int count;
} kv;
kv mmm[2*N];
void hash_clear(){
    long int t;
    for(t=0;t<2*N;t++){
        mmm[t].count=0;
        mmm[t].value=-1;
    }
}
void hash_inc(long int q){
    long int x=q%(N-1);
    while(mmm[x].value!=-1&&mmm[x].value!=q)
        x++;
    if (mmm[x].value==-1)
        mmm[x].value=q;
    mmm[x].count++;
}
long int hash_getc(long int q){
    long int x=q%(N-1); 
    while(mmm[x].value!=q){
        if(mmm[x].value==-1) break;
        x++;
	}
    return(mmm[x].count);
}
int main(){
    long int n;
    long int a[N];
    long int i,j,c;
    hash_clear();
    scanf("%ld",&n);
    for(i=0;i<n;i++)
        scanf("%ld",&a[i]);
    for(i=0;i<n-1;i++)
            hash_inc(a[i]+i);
    c=0;
    for(j=1;j<n;j++)
            if(j-a[j]>0) c+=hash_getc(j-a[j]);
 
    printf("%ld\n",c);
 
}