Submission #2527236
Source Code Expand
def count_jump(right_list, left_list, L): jump_count = 0 if len(right_list) == 0: for i, p in enumerate(left_list): jump_count += p - i - 1 elif len(left_list) == 0: for i, p in enumerate(right_list): jump_count += L - p - i else: # 各向きのグループの間隔を詰める for i, p in enumerate(right_list): jump_count += right_list[-1] - p - i for i, p in enumerate(left_list): jump_count += p - left_list[0] - i # グループ先頭同士の間を片方のグループを進めて詰める head_diff = left_list[0] - right_list[-1] - 1 max_cnt = max(len(right_list), len(left_list)) jump_count += head_diff * max_cnt return jump_count def solve(rabbits, L): # 最初は右向き jump_count = 0 bef_d = 'R' right_list = [] left_list = [] for n_pos, n_d in rabbits: # 背中合わせになったら、向き合っているグループのJUMP回数を求める if bef_d == 'L' and n_d == 'R': jump_count += count_jump(right_list, left_list, L) right_list = [] left_list = [] # うさぎを集める if n_d == 'R': right_list.append(n_pos) else: left_list.append(n_pos) # 前回の方向を保持 bef_d = n_d jump_count += count_jump(right_list, left_list, L) return jump_count if __name__ == '__main__': N, L = map(int, input().split()) rabbits = [] for _ in range(N): pos, direction = input().split() rabbits.append((int(pos), direction)) result = solve(rabbits, L) print(result)
Submission Info
Submission Time | |
---|---|
Task | C - ウサギ跳び |
User | ksomemo |
Language | Python (3.4.3) |
Score | 100 |
Code Size | 1780 Byte |
Status | AC |
Exec Time | 342 ms |
Memory | 14172 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 100 / 100 | ||||
Status |
|
|
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 | 17 ms | 3064 KB |
sample_02.txt | AC | 17 ms | 3064 KB |
sample_03.txt | AC | 17 ms | 3064 KB |
subtask1_01.txt | AC | 17 ms | 3064 KB |
subtask1_02.txt | AC | 17 ms | 3064 KB |
subtask1_03.txt | AC | 270 ms | 14164 KB |
subtask1_04.txt | AC | 270 ms | 14160 KB |
subtask1_05.txt | AC | 267 ms | 14168 KB |
subtask1_06.txt | AC | 264 ms | 14172 KB |
subtask1_07.txt | AC | 257 ms | 14168 KB |
subtask1_08.txt | AC | 270 ms | 14144 KB |
subtask1_09.txt | AC | 275 ms | 14144 KB |
subtask1_10.txt | AC | 274 ms | 13760 KB |
subtask1_11.txt | AC | 336 ms | 13364 KB |
subtask1_12.txt | AC | 260 ms | 14160 KB |
subtask1_13.txt | AC | 268 ms | 13788 KB |
subtask1_14.txt | AC | 266 ms | 14140 KB |
subtask1_15.txt | AC | 269 ms | 14144 KB |
subtask1_16.txt | AC | 342 ms | 13368 KB |
subtask1_17.txt | AC | 163 ms | 8380 KB |
subtask1_18.txt | AC | 178 ms | 8704 KB |
subtask1_19.txt | AC | 58 ms | 4444 KB |
subtask1_20.txt | AC | 276 ms | 12264 KB |
subtask1_21.txt | AC | 87 ms | 5644 KB |
subtask1_22.txt | AC | 134 ms | 7268 KB |
subtask1_23.txt | AC | 248 ms | 11252 KB |
subtask1_24.txt | AC | 116 ms | 6652 KB |
subtask1_25.txt | AC | 248 ms | 11324 KB |
subtask1_26.txt | AC | 286 ms | 12604 KB |
subtask1_27.txt | AC | 21 ms | 3064 KB |
subtask1_28.txt | AC | 300 ms | 13240 KB |
subtask1_29.txt | AC | 222 ms | 10720 KB |
subtask1_30.txt | AC | 79 ms | 5340 KB |
subtask1_31.txt | AC | 193 ms | 9448 KB |
subtask1_32.txt | AC | 297 ms | 12856 KB |