Submission #6237991


Source Code Expand

import sys
input = sys.stdin.readline

N,L = map(int,input().split())
# (右向き・左向き)でセット
left = []
right = []
last = 'R'

def F(left,right):
    l_cnt,l_sum = len(left), sum(left)
    r_cnt,r_sum = len(right), sum(right)
    # 集合場所
    if r_cnt == 0:
        P = 0, 1
    elif l_cnt == 0:
        P = L, L+1
    else:
        # 少人数側に寄せる
        if l_cnt < r_cnt:
            P = left[0]-1, left[0]
        else:
            P = right[-1], right[-1]+1
    # 右向きの移動距離
    x = (P[0] + P[0] - r_cnt + 1) * r_cnt // 2 - r_sum
    # 左向きの移動距離
    x += l_sum - (P[1] + P[1] + l_cnt - 1) * l_cnt // 2
    return x

answer = 0
for _ in range(N):
    x,d = input().split()
    x = int(x)
    if d == 'R':
        if last == 'R':
            right.append(x)
        else:
            # 一区切りになった
            last = 'R'
            answer += F(left,right)
            left = []
            right = [x]
    else:
        last = 'L'
        left.append(x)
answer += F(left,right)

print(answer)

Submission Info

Submission Time
Task C - ウサギ跳び
User maspy
Language Python (3.4.3)
Score 100
Code Size 1116 Byte
Status AC
Exec Time 197 ms
Memory 7084 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 3
AC × 35
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
All sample_01.txt, sample_02.txt, sample_03.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt, subtask1_22.txt, subtask1_23.txt, subtask1_24.txt, subtask1_25.txt, subtask1_26.txt, subtask1_27.txt, subtask1_28.txt, subtask1_29.txt, subtask1_30.txt, subtask1_31.txt, subtask1_32.txt
Case Name Status Exec Time Memory
sample_01.txt AC 16 ms 3064 KiB
sample_02.txt AC 17 ms 3064 KiB
sample_03.txt AC 17 ms 3064 KiB
subtask1_01.txt AC 16 ms 3064 KiB
subtask1_02.txt AC 17 ms 3064 KiB
subtask1_03.txt AC 94 ms 7084 KiB
subtask1_04.txt AC 97 ms 7084 KiB
subtask1_05.txt AC 90 ms 7076 KiB
subtask1_06.txt AC 103 ms 7076 KiB
subtask1_07.txt AC 93 ms 7076 KiB
subtask1_08.txt AC 101 ms 7072 KiB
subtask1_09.txt AC 95 ms 7072 KiB
subtask1_10.txt AC 90 ms 5020 KiB
subtask1_11.txt AC 197 ms 3064 KiB
subtask1_12.txt AC 101 ms 7084 KiB
subtask1_13.txt AC 96 ms 5284 KiB
subtask1_14.txt AC 96 ms 7072 KiB
subtask1_15.txt AC 106 ms 7064 KiB
subtask1_16.txt AC 193 ms 3064 KiB
subtask1_17.txt AC 90 ms 3064 KiB
subtask1_18.txt AC 85 ms 3064 KiB
subtask1_19.txt AC 35 ms 3064 KiB
subtask1_20.txt AC 138 ms 3064 KiB
subtask1_21.txt AC 51 ms 3064 KiB
subtask1_22.txt AC 68 ms 3064 KiB
subtask1_23.txt AC 128 ms 3064 KiB
subtask1_24.txt AC 64 ms 3064 KiB
subtask1_25.txt AC 119 ms 3064 KiB
subtask1_26.txt AC 132 ms 3064 KiB
subtask1_27.txt AC 18 ms 3064 KiB
subtask1_28.txt AC 151 ms 3064 KiB
subtask1_29.txt AC 122 ms 3064 KiB
subtask1_30.txt AC 46 ms 3064 KiB
subtask1_31.txt AC 96 ms 3064 KiB
subtask1_32.txt AC 149 ms 3064 KiB