結果
| 問題 |
No.3015 右に寄せろ!
|
| コンテスト | |
| ユーザー |
norioc
|
| 提出日時 | 2025-02-04 00:15:27 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 297 ms / 2,000 ms |
| コード長 | 492 bytes |
| コンパイル時間 | 632 ms |
| コンパイル使用メモリ | 82,556 KB |
| 実行使用メモリ | 235,992 KB |
| 最終ジャッジ日時 | 2025-02-04 00:15:34 |
| 合計ジャッジ時間 | 5,852 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 36 |
ソースコード
def group_when(xs, pred):
res = []
a = []
for x in xs:
if not a or pred(a[-1], x):
a.append(x)
else:
res.append(a)
a = [x]
if a:
res.append(a)
return res
S = input()
xs = [int(c) for c in S]
gg = group_when(xs, lambda a, b: a == b)
one = 0
ans = 0
for g in gg:
d = g[0]
n = len(g)
if d == 0:
ans += (one // 2) * n
one = (one // 2) * 2
elif d == 1:
one += n
print(ans)
norioc