結果
| 問題 | No.1090 ソーシャルディスタンス / Social Distance |
| ユーザー |
mochidan
|
| 提出日時 | 2020-06-29 15:20:24 |
| 言語 | PyPy3 (7.3.17) |
| 結果 |
AC
|
| 実行時間 | 127 ms / 2,000 ms |
| コード長 | 1,254 bytes |
| 記録 | |
| コンパイル時間 | 124 ms |
| コンパイル使用メモリ | 85,044 KB |
| 実行使用メモリ | 216,276 KB |
| 最終ジャッジ日時 | 2026-04-02 06:22:53 |
| 合計ジャッジ時間 | 3,996 ms |
|
ジャッジサーバーID (参考情報) |
judge2_0 / judge1_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 23 |
ソースコード
# -*- coding: utf-8 -*-
import sys
import math
from bisect import bisect_left
from bisect import bisect_right
from collections import defaultdict
from heapq import heappop, heappush
import itertools
import random
from decimal import *
input = sys.stdin.readline
def inputInt(): return int(input())
def inputMap(): return map(int, input().split())
def inputList(): return list(map(int, input().split()))
def inputStr(): return input()[:-1]
inf = float('inf')
mod = 1000000007
#-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
#-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
def main():
N,D = inputMap()
A = inputList()
moto = [0]
for i,val in enumerate(A):
tmp = moto[i] + val
moto.append(tmp)
ans = [0]
for i,val in enumerate(A):
if val >= D:
tmp = ans[i] + val
else:
tmp = ans[i] + D
ans.append(tmp)
ansans = [0]
for i in range(N):
if i == 0:
continue
tmp1 = moto[i] - ansans[i-1]
tmp2 = ans[i] - ansans[i-1]
if tmp1 >= D:
ansans.append(moto[i])
else:
aaa = D - tmp1
ansans.append(moto[i]+aaa)
print(*ansans)
#print(*ans)
#-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
#-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
if __name__ == "__main__":
main()
mochidan