結果
問題 | No.2092 Conjugation |
ユーザー | lloyz |
提出日時 | 2022-10-07 21:52:42 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
AC
|
実行時間 | 243 ms / 2,000 ms |
コード長 | 630 bytes |
コンパイル時間 | 222 ms |
コンパイル使用メモリ | 12,672 KB |
実行使用メモリ | 27,852 KB |
最終ジャッジ日時 | 2024-06-12 07:05:45 |
合計ジャッジ時間 | 3,313 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 18 |
ソースコード
n = int(input()) A = list(map(int, input().split())) C = [(0, 0)] for i in range(n - 1, -1, -1): if i == n - 1: prev_b = A[i] seq_n = 1 else: if A[i] == prev_b: seq_n += 1 else: C.append((prev_b, seq_n)) prev_b = A[i] seq_n = 1 if i == 0: C.append((prev_b, seq_n)) m = len(C) ANS = [0 for _ in range(A[0])] curr_b = n row_n = 0 cidx = 0 for i in range(1, m): block_n, decrease_n = C[i] for _ in range(block_n - row_n): ANS[cidx] = curr_b cidx += 1 row_n = block_n curr_b -= decrease_n print(*ANS)