結果
問題 | No.232 めぐるはめぐる (2) |
ユーザー |
|
提出日時 | 2020-03-18 23:10:15 |
言語 | Kuin (KuinC++ v.2021.9.17) |
結果 |
AC
|
実行時間 | 48 ms / 1,000 ms |
コード長 | 910 bytes |
コンパイル時間 | 2,318 ms |
コンパイル使用メモリ | 148,272 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-09-16 10:20:00 |
合計ジャッジ時間 | 3,636 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 22 |
ソースコード
func main() var ss: [][]char :: cui@input().split(" ") var T: int :: ss[0].toInt(&) var A: int :: ss[1].toInt(&) var B: int :: ss[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