Submission #1174441


Source Code Expand

import random, sys
import time
inputs = lambda: map(int, raw_input().split())

random.seed()

h, w, k, t = inputs()
X, Y = h, w
Cars = [inputs() for i in xrange(k)]
Coms = []

com_str = "LRUD-"
dd = [(0, -1), (0, 1), (-1, 0), (1, 0), (0, 0)]

order = range(k)
ds = range(4)

pre = 1000

def dist(x0, y0, x1, y1):
    return abs(x0 - x1) + abs(y0 - y1)

L = 0
for l in xrange(t):
    update = 0
    coms = [4]*k
    exist = {(x0, y0) for x0, y0, x1, y1 in Cars}
    nCars = [e[:] for e in Cars]
    random.shuffle(order)
    for i in order:
        x0, y0, x1, y1 = Cars[i]

        random.shuffle(ds)
        if abs(x0 - x1) + abs(y0 - y1) < 5:
            wild = random.randint(0, 2) < 1 and l < pre
        else:
            wild = random.randint(0, 1) and l < pre
        for d in ds:
            dx, dy = dd[d]
            nx = x0 + dx; ny = y0 + dy
            if not 0 < nx <= X or not 0 < ny <= Y:
                continue
            if not wild and dist(x0, y0, x1, y1) <= dist(nx, ny, x1, y1):
                continue
            if (nx, ny) not in exist:
                update = 1
                exist.add((nx, ny))
                nCars[i] = (nx, ny, x1, y1)
                coms[i] = d
                break

    if l > pre:
        if update == 0:
            L = l
            break
    for i in xrange(k):
        dx, dy = dd[coms[i]]
        x0, y0, x1, y1 = Cars[i]
        Cars[i] = (x0+dx, y0+dy, x1, y1)
    Coms.append(map(com_str.__getitem__, coms))
sys.stdout.write("%d\n" % L)
sys.stdout.write("\n".join("".join(e) for e in Coms))

Submission Info

Submission Time
Task B - 日本橋大渋滞
User yaketake08
Language Python (2.7.6)
Score 142521
Code Size 1621 Byte
Status AC
Exec Time 3488 ms
Memory 8436 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 6744 / 50000 4843 / 50000 5304 / 50000 5038 / 50000 1972 / 50000 4890 / 50000 3926 / 50000 6304 / 50000 5422 / 50000 6238 / 50000 7917 / 50000 3808 / 50000 4333 / 50000 4057 / 50000 4337 / 50000 5871 / 50000 6385 / 50000 4300 / 50000 1434 / 50000 5092 / 50000 3781 / 50000 5304 / 50000 3007 / 50000 1134 / 50000 3928 / 50000 5484 / 50000 4708 / 50000 4494 / 50000 4796 / 50000 7670 / 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 3385 ms 7796 KB
subtask_01_02.txt AC 3288 ms 7796 KB
subtask_01_03.txt AC 3314 ms 7796 KB
subtask_01_04.txt AC 3303 ms 7724 KB
subtask_01_05.txt AC 3322 ms 7724 KB
subtask_01_06.txt AC 3283 ms 7796 KB
subtask_01_07.txt AC 3334 ms 7796 KB
subtask_01_08.txt AC 3313 ms 8052 KB
subtask_01_09.txt AC 3285 ms 7796 KB
subtask_01_10.txt AC 3305 ms 7796 KB
subtask_01_11.txt AC 3422 ms 7796 KB
subtask_01_12.txt AC 3313 ms 7796 KB
subtask_01_13.txt AC 3488 ms 7796 KB
subtask_01_14.txt AC 3353 ms 7796 KB
subtask_01_15.txt AC 3458 ms 7796 KB
subtask_01_16.txt AC 3319 ms 7724 KB
subtask_01_17.txt AC 3323 ms 7796 KB
subtask_01_18.txt AC 3290 ms 7796 KB
subtask_01_19.txt AC 3367 ms 7796 KB
subtask_01_20.txt AC 3300 ms 7796 KB
subtask_01_21.txt AC 3301 ms 8436 KB
subtask_01_22.txt AC 3289 ms 7724 KB
subtask_01_23.txt AC 3315 ms 7796 KB
subtask_01_24.txt AC 3316 ms 7796 KB
subtask_01_25.txt AC 3298 ms 7796 KB
subtask_01_26.txt AC 3362 ms 7796 KB
subtask_01_27.txt AC 3301 ms 7796 KB
subtask_01_28.txt AC 3282 ms 7796 KB
subtask_01_29.txt AC 3312 ms 8180 KB
subtask_01_30.txt AC 3320 ms 7796 KB