AtCoder Beginner Contest 185 D - Stamp【Python】
https://atcoder.jp/contests/abc185/tasks/abc185_d
AtCoder ProblemsのRecommendationで Difficulty: 490、Solve Probability: 43%でした。
N, M = map(int, input().split()) if M > 0: A = list(map(int, input().split())) A = sorted(A) # 連続する白色のマスの数のリスト B = [] if N == M: print(0) exit() else: A_1 = A[1] for i in range(M+1): if i == 0: w_num = A[i]-1 elif i == M: w_num = N-A[i-1] else: w_num = A[i]-A[i-1]-1 if w_num != 0: B.append(w_num) k = min(B) ans = 0 # 連続する白色のマスの数をkで割って切り上げたものを加算していけば答え for w_num in B: ans += math.ceil(w_num / k) print(ans) exit() else: print(1)