東京海上日動プログラミングコンテスト2020 C - Lamps【Ptyhon】
問題はこちら。
import sys
sys.setrecursionlimit(10**6)
read = sys.stdin.read
readline = sys.stdin.readline
readlines = sys.stdin.readlines
def main():
N, K = map(int, readline().split())
A = list(map(int, readline().split()))
for _ in range(min(50, K)):
S = [0]*(N + 1)
for x, d in enumerate(A):
l = max(0, x - d)
r = min(N, x + d + 1)
S[l] += 1; S[r] -= 1
for i in range(N):
S[i + 1] += S[i]
A[i] = S[i]
print(*A)
if __name__ == "__main__":
main()
この記事が気に入ったらサポートをしてみませんか?