#C05TL06P04. C05T.L06.实战训练六.题目4.数对

C05T.L06.实战训练六.题目4.数对

题目描述

小明得到了一个包含 n 个数的数列,他会从中选出两个不同位置的数形成一个数对,要求较左边的数对 3 取余的结果小于等于较右边的数对 3 取余的结果,问小明有多少种选法。

输入格式

输入两行:

第一行包含一个正整数 n ,表示数列中数的数量。

第二行包含 n 个正整数,aia_i 表示数列中的第 i 个数。

数据范围

对于 60% 的数据,1 ≤ n ≤ 10310^3 , 1 ≤ aia_i106{10}^6

对于 100% 的数据,1 ≤ n ≤ 10510^5 , 1 ≤ aia_i10910^9

输出格式

一个整数,为所求的答案。

样例

4
1 3 4 2
5