結果

問題 No.675 ドットちゃんたち
コンテスト
ユーザー titia
提出日時 2025-11-11 03:15:53
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
TLE  
実行時間 -
コード長 913 bytes
コンパイル時間 387 ms
コンパイル使用メモリ 12,288 KB
実行使用メモリ 50,664 KB
最終ジャッジ日時 2025-11-11 03:16:04
合計ジャッジ時間 8,401 ms
ジャッジサーバーID
(参考情報)
judge2 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 1 TLE * 1 -- * 6
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

import sys
input = sys.stdin.readline

import numpy as np

N,x0,y0=map(int,input().split())

C=[list(map(int,input().split())) for i in range(N)]

A=np.array([[1,0,0],[0,1,0],[0,0,1]])

for L in C:
    if L[0]==1:
        x=L[1]

        B=np.array([[1,0,0],[0,1,0],[x,0,1]])

        A=A@B

    elif L[0]==2:
        x=L[1]

        B=np.array([[1,0,0],[0,1,0],[0,x,1]])

        A=A@B

    else:
        B=np.array([[0,-1,0],[1,0,0],[0,0,1]])

        A=A@B

NOW=np.array([[x0,y0,1]])

ANS=NOW@A

print(ANS[0][0],ANS[0][1])

for L in C[:-1]:
    if L[0]==1:
        x=L[1]

        B=np.array([[1,0,0],[0,1,0],[x,0,1]])

        A=np.linalg.inv(B)@A

    elif L[0]==2:
        x=L[1]

        B=np.array([[1,0,0],[0,1,0],[0,x,1]])

        A=np.linalg.inv(B)@A

    else:
        B=np.array([[0,-1,0],[1,0,0],[0,0,1]])

        A=np.linalg.inv(B)@A

    ANS=NOW@A

    print(round(ANS[0][0]),round(ANS[0][1]))

0