eolymp
bolt
Try our new interface for solving problems
Problems

Divisible by 3

Divisible by 3

For an array $[b_1, b_2, ..., b_m]$ of integers, let's define its weight as the sum of pairwise products of its elements, namely as the sum of $b_i \cdot b_j$ over $1 \le i < j \le m$. You are given an array of $n$ integers $[a_1, a_2, ..., a_n]$, and are asked to find the number of pairs of integers $(l, r)$ with $1 \le l \le r \le n$, for which the weight of the subarray $[a_l, a_{l+1}, ..., a_r]$ is divisible by $3$. \InputFile The first line contains a single integer $n~(1 \le n \le 5 \cdot 10^5)$ --- the length of the array. The second line contains $n$ integers $a_1, a_2, ..., a_n~(0 \le a_i \le 10^9)$ --- the elements of the array. \OutputFile Output a single integer --- the number of pairs of integers $(l, r)$ with $1 \le l \le r \le n$, for which the weight of the corresponding subarray is divisible by $3$.
Time limit 1 second
Memory limit 128 MiB
Input example #1
3
5 23 2021
Output example #1
4
Input example #2
5
0 0 1 3 3
Output example #2
15
Input example #3
10
0 1 2 3 4 5 6 7 8 9
Output example #3
20
Source 2020 SEERC South Eastern European Regional Programming Contest, Vinnica & Bucharest, May 23, Problem E