#arc136d. [arc136_d]Without Carry

[arc136_d]Without Carry

问题描述

给定一个长度为NN的整数序列:A=(A1,A2,cdots,AN)A=(A_1,A_2,\\cdots,A_N)

找到满足以下条件的整数对(i,j)(i,j)1leqi<jleqN1 \\leq i < j \\leq N)的数量:通过竖式相加计算Ai+AjA_i+A_j时不涉及进位。

约束条件

  • 2leqNleq1062 \\leq N \\leq 10^6
  • 0leqAileq10610 \\leq A_i \\leq 10^6-1
  • 输入中的所有值都是整数。

输入

从标准输入读入数据。

输入的格式如下:

NN

A1A_1 A2A_2 cdots\\cdots ANA_N

输出

输出答案。

示例输入 1

4
4 8 12 90

示例输出 1

3

满足条件的整数对(i,j)(i,j)(1,3),(1,4),(2,4)(1,3),(1,4),(2,4)

例如,计算A1+A3=4+12A_1+A_3=4+12时不涉及进位,所以(i,j)=(1,3)(i,j)=(1,3)符合条件。另一方面,计算A3+A4=12+90A_3+A_4=12+90时涉及进位,所以(i,j)=(3,4)(i,j)=(3,4)不符合条件。

示例输入 2

20
313923 246114 271842 371982 284858 10674 532090 593483 185123 364245 665161 241644 604914 645577 410849 387586 732231 952593 249651 36908

示例输出 2

6

示例输入 3

5
1 1 1 1 1

示例输出 3

10