atcoder#ARC148A. [ARC148A] mod M
[ARC148A] mod M
题目描述
数列 が与えられます。
あなたは次の操作をちょうど 回行うことができます。
- 以上の整数 を つ選ぶ。その後、 を満たすすべての整数 に対して、 を 「 を で割ったあまり」に置き換える。
例えば で を選んだ時、操作後の は $ (2\ \bmod\ 4,\ 7\ \bmod\ 4,\ 4\ \bmod\ 4)\ =\ (2,\ 3,\ 0) $ になります。
操作を行った後の に含まれる要素の種類数は最小で何種類になりますか?
输入格式
入力は以下の形式で標準入力から与えられる。
输出格式
答えを出力せよ。
题目大意
给出一个有 个非负整数的数列
现在进行以下的一次操作:
- 将 中所有数对一个大于等于2的整数 取模,替换掉原来的数
例如 ,取 ,则操作后
请问,操作后的数列 最少能有多少种不同的数字。
3
1 4 8
2
4
5 10 15 20
1
10
3785 5176 10740 7744 3999 3143 9028 2822 4748 6888
1
提示
制約
- 入力される値はすべて整数
Sample Explanation 1
操作で を選ぶと $ A\ =\ (1\ \bmod\ 3,\ 4\ \bmod\ 3,\ 8\ \bmod\ 3)\ =\ (1,\ 1,\ 2) $ になり、操作後の の要素の種類数は 種類になります。 の要素の種類数を 種類にすることはできないので が答えです。
Sample Explanation 2
操作で を選ぶと になり、これが最適です。