結果
問題 |
No.232 めぐるはめぐる (2)
|
ユーザー |
|
提出日時 | 2019-03-19 18:27:37 |
言語 | Kuin (KuinC++ v.2021.9.17) |
結果 |
AC
|
実行時間 | 47 ms / 1,000 ms |
コード長 | 906 bytes |
コンパイル時間 | 2,237 ms |
コンパイル使用メモリ | 148,280 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-09-16 09:58:01 |
合計ジャッジ時間 | 3,613 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge6 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 22 |
ソースコード
func main() var _: [][]char :: cui@input().split(" ") var T: int :: _[0].toInt(&) var A: int :: _[1].toInt(&) var B: int :: _[2].toInt(&) var ans: bool :: true if(A.abs() > T | B.abs() > T) do ans :: false end if if(T = 1 & A = 0 & B = 0) do ans :: false end if if(!ans) do cui@print("NO\n") else do cui@print("YES\n") var x: int :: 0 var y: int :: 0 for t(1, T) if(t = 1 & (T - B) % 2 <> 0) do y :+ moveY(A - y > 0 ?(1, -1)) do cui@print("\n") skip t end if if(t = T & (T - A) % 2 <> 0) do x :+ moveX(B - x > 0 ?(1, -1)) do cui@print("\n") skip t end if do x :+ moveX(B - x > 0 ?(1, -1)) do y :+ moveY(A - y > 0 ?(1, -1)) do cui@print("\n") end for func moveY(dy: int): int do cui@print(dy = 1 ?("^", "v")) ret dy end func func moveX(dx: int): int do cui@print(dx = 1 ?(">", "<")) ret dx end func end if end func