题目描述
AtCoder 国には A1 円玉、A2 円玉、A3 円玉、… 、AN 円玉の N 種類のコインがあります。
ここで A1 = 1 であり、1 ≤ i < N を満たす全ての整数 i について、 Ai < Ai + 1 かつ Ai + 1 は Ai の倍数です。
この国のある店で、犬のルンルンは X 円の商品を購入するために店員に y (≥ X) 円を渡し、店員はお釣りとして y − X 円を返しました。(お釣りが 0 円の可能性もあります)
このとき、ルンルンも店員もその金額をちょうど渡すのに必要な最小の枚数のコインで受け渡しを行いました。
また、ルンルンが店員に渡したコインのいずれかと同じ種類のコインが店員から返されることはありませんでした。
X が与えられるので、y として考えられる値が何通りあるかを求めてください。
输入格式
入力は以下の形式で標準入力から与えられる。
N X A1 A2 A3 … AN
输出格式
y として考えられる値が何通りあるかを出力せよ。
题目大意
有 N 种硬币,面值分别为 A1,A2,A3…AN 元,满足 A1=1,且对于所有 1≤i<N,有 Ai<Ai+1 且 Ai∣Ai+1 。
lunlun 用 y(≥X) 元 买了一件 X 元的商品,收到了 y−X 的找零。lunlun 和收银员都用了最少数量的硬币来付钱。特殊地,收银员没有和 lunlun 用相同种类的硬币。
给出 X,求 y 有多少种可能。
提示
制約
- 1 ≤ N ≤ 50
- 1 = A1 < A2 < A3 < … < AN ≤ 1015
- Ai + 1 は Ai の倍数 (1 ≤ i < N)
- 1 ≤ X ≤ 1015
- 入力はすべて整数
Sample Explanation 1
y として考えられる値は 9, 10, 14 です。 例えば、 y = 14 のときルンルンは 10 円玉 1 枚と 1 円玉 4 枚を渡し、店員は 5 円玉 1 枚でお釣りを返します。 このとき、ルンルンが渡したどの種類のコインも店員は返していないので条件を満たします。
Sample Explanation 2
y として考えられる値は 198, 200, 203, 208, 248 です。
Sample Explanation 3
y として考えられる値は 44, 60, 100, 104 です。