Submission #1173644


Source Code Expand

import sys
from heapq import heapify, heappush, heappop

H, W, K, T = 30, 30, 450, 10000

def solve():
    # Input
    input()
    s, g = [], []

    for i in range(K):
        a, b, c, d = map(int, input().split())
        s.append([a - 1, b - 1])
        g.append((c - 1, d - 1))

    # Process
    res = tekito_move(s, g)
    L, ans = len(res), res

    # Output
    print(L)
    print(*ans, sep='\n')

def tekito_move(s, g):
    res = []
    ban = [[0] * W for i in range(H)]

    # 盤面を作る
    for rs, cs in s:
        ban[rs][cs] = 1

    i = 0

    for lp in range(2 * T):
        if lp == T:
            break
        if i == K:
            break

        rs, cs = s[i]
        rg, cg = g[i]
        msg = ''

        if rs < rg:
            if ban[rs + 1][cs] == 0:
                ban[rs][cs] = 0
                ban[rs + 1][cs] = 1
                s[i] = [rs + 1, cs]
                msg = '-' * i + 'D' + '-' * (K - i - 1)
        elif rs > rg:
            if ban[rs - 1][cs] == 0:
                ban[rs][cs] = 0
                ban[rs - 1][cs] = 1
                s[i] = [rs - 1, cs]
                msg = '-' * i + 'U' + '-' * (K - i - 1)
        elif cs < cg:
            if ban[rs][cs + 1] == 0:
                ban[rs][cs] = 0
                ban[rs][cs + 1] = 1
                s[i] = [rs, cs + 1]
                msg = '-' * i + 'R' + '-' * (K - i - 1)
        elif cs > cg:
            if ban[rs][cs - 1] == 0:
                ban[rs][cs] = 0
                ban[rs][cs - 1] = 1
                s[i] = [rs, cs - 1]
                msg = '-' * i + 'L' + '-' * (K - i - 1)

        if msg:
            res.append(msg)
        else:
            i += 1

    return res



def debug(x, table):
    for name, val in table.items():
        if x is val:
            print('DEBUG:{} -> {}'.format(name, val), file=sys.stderr)
            return None

if __name__ == '__main__':
    solve()

Submission Info

Submission Time
Task B - 日本橋大渋滞
User nanae
Language Python (3.4.3)
Score 2367
Code Size 1993 Byte
Status AC
Exec Time 28 ms
Memory 3700 KB

Judge Result

Set Name test_01 test_02 test_03 test_04 test_05 test_06 test_07 test_08 test_09 test_10 test_11 test_12 test_13 test_14 test_15 test_16 test_17 test_18 test_19 test_20 test_21 test_22 test_23 test_24 test_25 test_26 test_27 test_28 test_29 test_30
Score / Max Score 81 / 50000 81 / 50000 80 / 50000 82 / 50000 84 / 50000 81 / 50000 82 / 50000 82 / 50000 74 / 50000 75 / 50000 86 / 50000 77 / 50000 79 / 50000 80 / 50000 77 / 50000 79 / 50000 78 / 50000 78 / 50000 79 / 50000 79 / 50000 83 / 50000 79 / 50000 77 / 50000 76 / 50000 75 / 50000 77 / 50000 79 / 50000 73 / 50000 76 / 50000 78 / 50000
Status
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
AC × 1
Set Name Test Cases
test_01 subtask_01_01.txt
test_02 subtask_01_02.txt
test_03 subtask_01_03.txt
test_04 subtask_01_04.txt
test_05 subtask_01_05.txt
test_06 subtask_01_06.txt
test_07 subtask_01_07.txt
test_08 subtask_01_08.txt
test_09 subtask_01_09.txt
test_10 subtask_01_10.txt
test_11 subtask_01_11.txt
test_12 subtask_01_12.txt
test_13 subtask_01_13.txt
test_14 subtask_01_14.txt
test_15 subtask_01_15.txt
test_16 subtask_01_16.txt
test_17 subtask_01_17.txt
test_18 subtask_01_18.txt
test_19 subtask_01_19.txt
test_20 subtask_01_20.txt
test_21 subtask_01_21.txt
test_22 subtask_01_22.txt
test_23 subtask_01_23.txt
test_24 subtask_01_24.txt
test_25 subtask_01_25.txt
test_26 subtask_01_26.txt
test_27 subtask_01_27.txt
test_28 subtask_01_28.txt
test_29 subtask_01_29.txt
test_30 subtask_01_30.txt
Case Name Status Exec Time Memory
subtask_01_01.txt AC 22 ms 3700 KB
subtask_01_02.txt AC 21 ms 3572 KB
subtask_01_03.txt AC 21 ms 3700 KB
subtask_01_04.txt AC 21 ms 3572 KB
subtask_01_05.txt AC 21 ms 3700 KB
subtask_01_06.txt AC 28 ms 3572 KB
subtask_01_07.txt AC 21 ms 3572 KB
subtask_01_08.txt AC 21 ms 3700 KB
subtask_01_09.txt AC 21 ms 3700 KB
subtask_01_10.txt AC 21 ms 3700 KB
subtask_01_11.txt AC 20 ms 3572 KB
subtask_01_12.txt AC 21 ms 3700 KB
subtask_01_13.txt AC 21 ms 3572 KB
subtask_01_14.txt AC 20 ms 3572 KB
subtask_01_15.txt AC 20 ms 3572 KB
subtask_01_16.txt AC 21 ms 3700 KB
subtask_01_17.txt AC 20 ms 3572 KB
subtask_01_18.txt AC 21 ms 3700 KB
subtask_01_19.txt AC 21 ms 3700 KB
subtask_01_20.txt AC 20 ms 3572 KB
subtask_01_21.txt AC 21 ms 3572 KB
subtask_01_22.txt AC 21 ms 3572 KB
subtask_01_23.txt AC 21 ms 3700 KB
subtask_01_24.txt AC 20 ms 3700 KB
subtask_01_25.txt AC 21 ms 3700 KB
subtask_01_26.txt AC 21 ms 3700 KB
subtask_01_27.txt AC 21 ms 3572 KB
subtask_01_28.txt AC 21 ms 3700 KB
subtask_01_29.txt AC 21 ms 3700 KB
subtask_01_30.txt AC 20 ms 3572 KB