Time Limit: 2 sec / Memory Limit: 1024 MB
配点 : 400 点
問題文
整数列 A=(A_1,\ldots,A_N) および,正整数 a,b,c が与えられます.
あなたはこの数列に対して,以下の操作を(0 回を含め)何回でも行うことができます.
- 1\leq i\leq N となる整数 i をひとつ選ぶ.A_i を A_i+1 で置き換える.
あなたの目的は,数列 A の中に,a の倍数,b の倍数,c の倍数がいずれもひとつ以上存在するようにすることです. 目的を達成するために必要な操作回数の最小値を求めてください.
制約
- 1\leq N\leq 2\times 10^5
- 1\leq a, b, c \leq 10^6
- 1\leq A_i\leq 10^{18}
入力
入力は以下の形式で標準入力から与えられます.
N a b c A_1 \cdots A_N
出力
目的を達成するために必要な操作回数の最小値を出力してください.
入力例 1
3 3 4 5 8 9 11
出力例 1
2
操作を 2 回行い A = (8,10,12) とすることで目的を達成できます.
入力例 2
3 3 4 5 14 11 59
出力例 2
1
操作を 1 回行い A = (14,11,60) とすることで目的を達成できます.
入力例 3
6 10 20 30 8 17 5 28 39 13
出力例 3
3
操作を 3 回行い A = (8,17,5,30,40,13) とすることで目的を達成できます.
入力例 4
1 999997 999998 999999 123456789123456789
出力例 4
876537210887543205
操作を 876537210887543205 回行い A = (999994000010999994) とすることで目的を達成できます.
Score : 400 points
Problem Statement
You are given an integer sequence A=(A_1,\ldots,A_N) and positive integers a, b, and c.
You can perform the following operation on this sequence any number of times, possibly zero.
- Choose an integer i such that 1\leq i\leq N. Replace A_i with A_i+1.
Your objective is to make the sequence A contain at least one multiple of a, at least one multiple of b, and at least one multiple of c. Find the minimum number of operations required to achieve this objective.
Constraints
- 1\leq N\leq 2\times 10^5
- 1\leq a, b, c \leq 10^6
- 1\leq A_i\leq 10^{18}
Input
The input is given from Standard Input in the following format:
N a b c A_1 \cdots A_N
Output
Print the minimum number of operations required to achieve the objective.
Sample Input 1
3 3 4 5 8 9 11
Sample Output 1
2
You can perform the operation twice so that A = (8,10,12) to achieve the objective.
Sample Input 2
3 3 4 5 14 11 59
Sample Output 2
1
You can perform the operation once so that A = (14,11,60) to achieve the objective.
Sample Input 3
6 10 20 30 8 17 5 28 39 13
Sample Output 3
3
You can perform the operation three times so that A = (8,17,5,30,40,13) to achieve the objective.
Sample Input 4
1 999997 999998 999999 123456789123456789
Sample Output 4
876537210887543205
You can perform the operation 876537210887543205 times so that A = (999994000010999994) to achieve the objective.