ログインしてください。
公式
C - 連続カード分け / Consecutive Card Distribution 解説
by
C - 連続カード分け / Consecutive Card Distribution 解説
by
sounansya
まず \(A\) を昇順にソートします。
連番となるカードを全て同じグループに属させることを考えます。
このとき、\(A_i\) と \(A_{i+1}\) が同じグループに属することは \(A_i + 1 = A_{i+1}\) が成り立つことと同値です。したがって、求めるグループ数は \(A_i+1 < A_{i+1}\) が成り立つ \(i\) の個数に \(1\) 足した値となります。
n = int(input())
a = list(map(int, input().split()))
a.sort()
ans = 1
for i in range(1, n):
ans += a[i] - a[i - 1] != 1
print(ans)
投稿日時:
最終更新:
