結果
問題 |
No.2673 A present from B
|
ユーザー |
|
提出日時 | 2024-03-15 23:58:18 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 588 bytes |
コンパイル時間 | 299 ms |
コンパイル使用メモリ | 81,920 KB |
実行使用メモリ | 62,464 KB |
最終ジャッジ日時 | 2024-09-30 03:30:36 |
合計ジャッジ時間 | 2,184 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 11 WA * 13 |
ソースコード
import sys input = sys.stdin.readline N, M = map(int, input().split()) A = list(map(int, input().split())) dp = [i for i in range(N)] for a in A: a-=1 dp[a], dp[a+1] = dp[a+1], dp[a] v = dp[0] INF = 10**9 ans = [abs(v-i) for i in range(N)] dp2 = [i for i in range(N)] vpos = v for a in A: a-=1 if vpos==a: vpos+=1 elif vpos==a+1: vpos-=1 dp2[a], dp2[a+1] = dp2[a+1], dp2[a] #print(vpos, dp2) for j in range(1, N): ans[dp2[j]] = min(ans[dp2[j]], abs(vpos-j)) for i in range(1, N): ans[i] = min(ans[i], ans[i-1]+1) print(*ans[1:])