提出 #45617593


ソースコード 拡げる

import sys
from functools import lru_cache
from collections import defaultdict


sys.setrecursionlimit(10**9)
def I(): return input()
def IS(): return input().split()
def II(): return int(input())
def LI(): return list(input())
def MI(): return map(int,input().split())
def LMI(): return list(map(int,input().split()))
def LLMI(number): return [list(map(int,input().split())) for _ in range(number)]

def generate_input()->list:
    import random
    inputdata = []
    n = random.randint(0, 100)
    inputdata.append(n)
    return inputdata


def simple_solve(n):
    ans = 0
    return ans


def solve(n, m, info):
    posision = defaultdict(tuple)
    posision[1] = (0, 0)

    edge = defaultdict(list)
    for a, b, x, y in info:
        edge[a].append([b, x, y])
        edge[b].append([a, -x, -y])

    stack = [[1, 0, 0]]
    while stack:
        p, x, y = stack.pop()
        for np, dx, dy in edge[p]:
            if (x+dx, y+dy) == posision[np]:
                continue
            posision[np] = (x+dx, y+dy)
            stack.append([np, x+dx, y+dy])

    for i in range(n):
        if len(posision[i+1]) != 2:
            print("undecidable")
        else:
            print(*posision[i+1])



if __name__=='__main__':
    test = False
    if test:
        inputdata = generate_input()
        a = simple_solve(*inputdata)
        b = solve(*inputdata)
        if a != b:
            print(*inputdata)
            print(a, b)
            exit(1)
    else:
        inputdata = []
        for v in MI():
            inputdata.append(v)
        info = LLMI(inputdata[1])
        inputdata.append(info)
        solve(*inputdata)

提出情報

提出日時
問題 D - Relative Position
ユーザ osushi
言語 Python (PyPy 3.10-v7.3.12)
得点 400
コード長 1707 Byte
結果 AC
実行時間 633 ms
メモリ 195204 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 400 / 400
結果
AC × 3
AC × 15
セット名 テストケース
Sample sample_01.txt, sample_02.txt, sample_03.txt
All random_01.txt, random_02.txt, random_03.txt, random_04.txt, random_05.txt, random_06.txt, random_07.txt, random_08.txt, random_09.txt, random_10.txt, random_11.txt, random_12.txt, sample_01.txt, sample_02.txt, sample_03.txt
ケース名 結果 実行時間 メモリ
random_01.txt AC 633 ms 193292 KiB
random_02.txt AC 464 ms 162360 KiB
random_03.txt AC 630 ms 195204 KiB
random_04.txt AC 405 ms 149728 KiB
random_05.txt AC 610 ms 190060 KiB
random_06.txt AC 603 ms 188448 KiB
random_07.txt AC 285 ms 165756 KiB
random_08.txt AC 440 ms 162948 KiB
random_09.txt AC 570 ms 193560 KiB
random_10.txt AC 633 ms 194684 KiB
random_11.txt AC 79 ms 80852 KiB
random_12.txt AC 374 ms 148044 KiB
sample_01.txt AC 78 ms 80928 KiB
sample_02.txt AC 77 ms 80864 KiB
sample_03.txt AC 77 ms 80796 KiB