eolymp
bolt
Try our new interface for solving problems
Problems

Stone Game

Stone Game

Bessie and Elsie are playing a game with n piles of stones, where the i-th pile has ai (1ai106) stones for each i (1in). The two cows alternate turns, with Bessie going first.

  • First, Bessie chooses some positive integer s1 and removes s1 stones from some pile with at least s1 stones.
  • Then Elsie chooses some positive integer s2 such that s1 divides s2 and removes s2 stones from some pile with at least s2 stones.
  • Then Bessie chooses some positive integer s3 such that s2 divides s3 and removes s3 stones from some pile with at least s3 stones and so on.
  • In general, si, the number of stones removed on turn i, must divide si+1.

The first cow who is unable to remove stones on her turn loses.

Compute the number of ways Bessie can remove stones on her first turn in order to guarantee a win (meaning that there exists a strategy such that Bessie wins regardless of what choices Elsie makes). Two ways of removing stones are considered to be different if they remove a different number of stones or they remove stones from different piles.

Input

The first line contains n (1n105).

The second line contains n integers a1,..., an.

Output

Print the number of ways Bessie can remove stones on her first turn in order to guarantee a win.

Note that the large size of integers involved in this problem may require the use of 64-bit integer data types (e.g., a "long long" in C/C++).

Example 1

Bessie wins if she removes 4, 5, 6 or 7 stones from the only pile. Then the game terminates immediately.

Example 2

Bessie wins if she removes 2 or 3 stones from any pile. Then the two players will alternate turns removing the same number of stones, with Bessie making the last move.

Time limit 2 seconds
Memory limit 128 MiB
Input example #1
1
7
Output example #1
4
Input example #2
6
3 2 3 2 3 1
Output example #2
8
Source 2021 USACO February, Gold