class Map(dict):

    def __missing__(self, key):

        self[key] = 0

        return 0





def main():

    int(eval(input()))



    d = Map()

    ans = 0

    for i, height in enumerate(input().split()):

        height = int(height)

        # 引き算のほうの i は足し算のよりも大きい。

        # 従って，このように順番に見ていく必要がある。

        d[i + height] += 1

        ans += d[i - height]



    return ans





if __name__ == '__main__':

    print((main()))



# 大いに参考にした。

# https://kmjp.hatenablog.jp/entry/2020/05/03/1030

# class Map(dict):

#     def __missing__(self, key):

#         # この割当てなしのほうが速い。

#         # self[key] = 0

#         return 0





def main():

    int(eval(input()))



    d = {}

    ans = 0

    for i, height in enumerate(input().split()):

        height = int(height)

        # 引き算のほうの i は足し算のよりも大きい。

        # 従って，このように順番に見ていく必要がある。

        got = d.get(i + height) or 0

        d[i + height] = got + 1

        ans += d.get(i - height) or 0



    return ans





if __name__ == '__main__':

    print((main()))



# 大いに参考にした。

# https://kmjp.hatenablog.jp/entry/2020/05/03/1030

class Map(dict):
    def __missing__(self, key):
        self[key] = 0
        return 0


def main():
    int(eval(input()))
    d = Map()
    ans = 0
    for i, height in enumerate(input().split()):
        height = int(height)
        # 引き算のほうの i は足し算のよりも大きい。
        # 従って，このように順番に見ていく必要がある。
        d[i + height] += 1
        ans += d[i - height]
    return ans


if __name__ == "__main__":
    print((main()))
# 大いに参考にした。
# https://kmjp.hatenablog.jp/entry/2020/05/03/1030

# class Map(dict):
#     def __missing__(self, key):
#         # この割当てなしのほうが速い。
#         # self[key] = 0
#         return 0
def main():
    int(eval(input()))
    d = {}
    ans = 0
    for i, height in enumerate(input().split()):
        height = int(height)
        # 引き算のほうの i は足し算のよりも大きい。
        # 従って，このように順番に見ていく必要がある。
        got = d.get(i + height) or 0
        d[i + height] = got + 1
        ans += d.get(i - height) or 0
    return ans


if __name__ == "__main__":
    print((main()))
# 大いに参考にした。
# https://kmjp.hatenablog.jp/entry/2020/05/03/1030

-class Map(dict): -    def __missing__(self, key): -        self[key] = 0 -        return 0 - - +# class Map(dict): +#     def __missing__(self, key): +#         # この割当てなしのほうが速い。 +#         # self[key] = 0 +#         return 0 -    d = Map() +    d = {} -        d[i + height] += 1 -        ans += d[i - height] +        got = d.get(i + height) or 0 +        d[i + height] = got + 1 +        ans += d.get(i - height) or 0