Submission #13736111


Source Code Expand

import sys

read = sys.stdin.buffer.read
readline = sys.stdin.buffer.readline
readlines = sys.stdin.buffer.readlines

T = read().rstrip().decode()

T

def f(n, r, l, z):
    # 長さnの1が座標 r から l へと移動する。
    # z回立ち止まることが許されている。
    # 獲得スコアの最大値は?
    if n % 2 == 0:
        move = r - l + z
        return (move + 1) * (n // 2)
    if r == l and r % 2 == 0:
        # ev, od, ev, od, evで固定
        k = (n - 1) // 2
        move = r - l + z
        return (move + 1) * k
    # 各地点に1回ずつ立ち寄りつつ、奇数のところでz回足踏みできる
    ev = (r // 2) - ((l - 1) // 2)
    od = (r - l + 1) - ev
    od += z
    k = (n - 1) // 2
    return ev * k + od * (k + 1)

Z = T.count('0')
one = 0
to = 0
answer = 0
for i, x in enumerate(T, 1):
    if x == '0':
        if one:
            answer += f(one, i - 1, to, Z)
            one = 0
        Z -= 1
        continue
    to += 1
    one += 1
if one:
    answer += f(one, i, to, Z)

def f(n):
    # '1' * n から減らしたときのスコア
    # ただし、最初は除く
    ret = 0
    for i in range(0, n, 2):
        ret += (n - i)
    ret -= (n + 1) // 2
    return ret

n = T.count('1')
answer += f(n)
print(answer)

Submission Info

Submission Time
Task E - Binary Programming
User maspy
Language Python (3.8.2)
Score 900
Code Size 1341 Byte
Status AC
Exec Time 110 ms
Memory 9348 KiB

Judge Result

Set Name All Sample
Score / Max Score 900 / 900 0 / 0
Status
AC × 75
AC × 2
Set Name Test Cases
All sample_01.txt, sample_02.txt, testcase_1.txt, testcase_10.txt, testcase_11.txt, testcase_12.txt, testcase_13.txt, testcase_14.txt, testcase_15.txt, testcase_16.txt, testcase_17.txt, testcase_18.txt, testcase_19.txt, testcase_2.txt, testcase_20.txt, testcase_21.txt, testcase_22.txt, testcase_23.txt, testcase_24.txt, testcase_25.txt, testcase_26.txt, testcase_27.txt, testcase_28.txt, testcase_29.txt, testcase_3.txt, testcase_30.txt, testcase_31.txt, testcase_32.txt, testcase_33.txt, testcase_34.txt, testcase_35.txt, testcase_36.txt, testcase_37.txt, testcase_38.txt, testcase_39.txt, testcase_4.txt, testcase_40.txt, testcase_41.txt, testcase_42.txt, testcase_43.txt, testcase_44.txt, testcase_45.txt, testcase_46.txt, testcase_47.txt, testcase_48.txt, testcase_49.txt, testcase_5.txt, testcase_50.txt, testcase_51.txt, testcase_52.txt, testcase_53.txt, testcase_54.txt, testcase_55.txt, testcase_56.txt, testcase_57.txt, testcase_58.txt, testcase_59.txt, testcase_6.txt, testcase_60.txt, testcase_61.txt, testcase_62.txt, testcase_63.txt, testcase_64.txt, testcase_65.txt, testcase_66.txt, testcase_67.txt, testcase_68.txt, testcase_69.txt, testcase_7.txt, testcase_70.txt, testcase_71.txt, testcase_72.txt, testcase_73.txt, testcase_8.txt, testcase_9.txt
Sample sample_01.txt, sample_02.txt
Case Name Status Exec Time Memory
sample_01.txt AC 18 ms 8932 KiB
sample_02.txt AC 16 ms 8936 KiB
testcase_1.txt AC 19 ms 8944 KiB
testcase_10.txt AC 21 ms 8936 KiB
testcase_11.txt AC 18 ms 9040 KiB
testcase_12.txt AC 19 ms 9092 KiB
testcase_13.txt AC 16 ms 9100 KiB
testcase_14.txt AC 19 ms 9232 KiB
testcase_15.txt AC 16 ms 8936 KiB
testcase_16.txt AC 18 ms 9168 KiB
testcase_17.txt AC 15 ms 8932 KiB
testcase_18.txt AC 17 ms 8932 KiB
testcase_19.txt AC 17 ms 8908 KiB
testcase_2.txt AC 15 ms 9092 KiB
testcase_20.txt AC 19 ms 8944 KiB
testcase_21.txt AC 15 ms 9024 KiB
testcase_22.txt AC 17 ms 9048 KiB
testcase_23.txt AC 19 ms 9228 KiB
testcase_24.txt AC 15 ms 9044 KiB
testcase_25.txt AC 15 ms 9044 KiB
testcase_26.txt AC 17 ms 9028 KiB
testcase_27.txt AC 15 ms 9224 KiB
testcase_28.txt AC 17 ms 8928 KiB
testcase_29.txt AC 16 ms 8900 KiB
testcase_3.txt AC 15 ms 9044 KiB
testcase_30.txt AC 17 ms 9044 KiB
testcase_31.txt AC 20 ms 9160 KiB
testcase_32.txt AC 15 ms 9036 KiB
testcase_33.txt AC 19 ms 9092 KiB
testcase_34.txt AC 57 ms 9120 KiB
testcase_35.txt AC 47 ms 9224 KiB
testcase_36.txt AC 110 ms 9280 KiB
testcase_37.txt AC 106 ms 9108 KiB
testcase_38.txt AC 65 ms 9228 KiB
testcase_39.txt AC 46 ms 9276 KiB
testcase_4.txt AC 15 ms 9044 KiB
testcase_40.txt AC 62 ms 9220 KiB
testcase_41.txt AC 50 ms 9212 KiB
testcase_42.txt AC 16 ms 9040 KiB
testcase_43.txt AC 20 ms 9096 KiB
testcase_44.txt AC 62 ms 9120 KiB
testcase_45.txt AC 58 ms 9220 KiB
testcase_46.txt AC 56 ms 9104 KiB
testcase_47.txt AC 60 ms 9348 KiB
testcase_48.txt AC 63 ms 9276 KiB
testcase_49.txt AC 80 ms 9272 KiB
testcase_5.txt AC 18 ms 9036 KiB
testcase_50.txt AC 76 ms 9344 KiB
testcase_51.txt AC 76 ms 9120 KiB
testcase_52.txt AC 74 ms 9116 KiB
testcase_53.txt AC 78 ms 9208 KiB
testcase_54.txt AC 64 ms 9272 KiB
testcase_55.txt AC 68 ms 9216 KiB
testcase_56.txt AC 63 ms 9220 KiB
testcase_57.txt AC 64 ms 9220 KiB
testcase_58.txt AC 68 ms 9344 KiB
testcase_59.txt AC 56 ms 9216 KiB
testcase_6.txt AC 18 ms 8928 KiB
testcase_60.txt AC 56 ms 9216 KiB
testcase_61.txt AC 63 ms 9272 KiB
testcase_62.txt AC 56 ms 9344 KiB
testcase_63.txt AC 58 ms 9220 KiB
testcase_64.txt AC 77 ms 9220 KiB
testcase_65.txt AC 78 ms 9216 KiB
testcase_66.txt AC 78 ms 9220 KiB
testcase_67.txt AC 79 ms 9108 KiB
testcase_68.txt AC 82 ms 9344 KiB
testcase_69.txt AC 62 ms 9224 KiB
testcase_7.txt AC 16 ms 9044 KiB
testcase_70.txt AC 63 ms 9224 KiB
testcase_71.txt AC 67 ms 9112 KiB
testcase_72.txt AC 64 ms 9220 KiB
testcase_73.txt AC 65 ms 9224 KiB
testcase_8.txt AC 21 ms 9036 KiB
testcase_9.txt AC 16 ms 8944 KiB