結果

問題 No.1226 I hate Robot Arms
ユーザー ygd.ygd.
提出日時 2020-09-11 23:23:20
言語 PyPy3
(7.3.15)
結果
TLE  
実行時間 -
コード長 1,275 bytes
コンパイル時間 1,662 ms
コンパイル使用メモリ 86,968 KB
実行使用メモリ 94,216 KB
最終ジャッジ日時 2023-08-30 10:34:08
合計ジャッジ時間 5,846 ms
ジャッジサーバーID
(参考情報)
judge13 / judge11
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 73 ms
71,824 KB
testcase_01 AC 81 ms
76,760 KB
testcase_02 TLE -
testcase_03 -- -
testcase_04 -- -
testcase_05 -- -
testcase_06 -- -
testcase_07 -- -
testcase_08 -- -
testcase_09 -- -
testcase_10 -- -
testcase_11 -- -
testcase_12 -- -
testcase_13 -- -
testcase_14 -- -
testcase_15 -- -
testcase_16 -- -
testcase_17 -- -
testcase_18 -- -
testcase_19 -- -
testcase_20 -- -
testcase_21 -- -
testcase_22 -- -
testcase_23 -- -
testcase_24 -- -
testcase_25 -- -
testcase_26 -- -
testcase_27 -- -
testcase_28 -- -
testcase_29 -- -
権限があれば一括ダウンロードができます

ソースコード

diff #

import math
N,Q = map(int,input().split())
kyoku = [1 for _ in range(N)] #theta, R, 0index
now = [[0,ii+1] for ii in range(N)]
B = [0 for _ in range(N)]
kakudo = [0 for _ in range(N)]
Flag = True
for _ in range(Q):
  query = list(map(int,input().split())) #ID,i,x
  ID = query[0]
  i = query[1] - 1 #0index
  if ID == 0: #角度
    B[i] += query[2]; Flag = False
  elif ID == 1: #長さ
    kyoku[i] = query[2]; Flag = False
  else:
    #prevB = [0 for _ in range(N)] #imos法のリセット
    #B, preB = prevB, B
    #print(B,kakudo)
    if Flag: #直前に更新したばかりであればそのままでよい。
      print(*now[i])
      continue
    for j in range(N):
      if j == 0:
        kakudo[j] += B[j]
        Theta = math.radians(B[0])
      else:
        B[j] += B[j-1]
        #print(kakudo,B)
        kakudo[j] += B[j]
        Theta = math.radians(kakudo[j])
      R = kyoku[j]
      #print(Theta,B[j],R)
      if j == 0:
        now[j][0] = R*math.cos(Theta)
        now[j][1] = R*math.sin(Theta)
      else:
        now[j][0] = now[j-1][0] + R*math.cos(Theta)
        now[j][1] = now[j-1][1] + R*math.sin(Theta)        
    #print(now)
    print(*now[i])
    Flag = True
    #print(kakudo)
    kakudo = B
    B = [0 for _ in range(N)]
#print(kakudo)
0