結果
問題 |
No.232 めぐるはめぐる (2)
|
ユーザー |
![]() |
提出日時 | 2015-10-08 09:20:46 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,397 bytes |
コンパイル時間 | 607 ms |
コンパイル使用メモリ | 58,740 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-07-20 02:04:25 |
合計ジャッジ時間 | 2,638 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 21 WA * 1 |
ソースコード
#include<iostream> #include<algorithm> int main() { int time, up, right; std::cin >> time >> up >> right; if (time < std::max(up, right) || (time == 1 && up == 0 && right == 0)) { std::cout << "NO" << std::endl; return 0; } std::cout << "YES" << std::endl; if (std::max(up, right) != time) { if (up < right) { up++; time--; std::cout << "v" << std::endl; } else { right++; time--; std::cout << "<" << std::endl; } } //ゴールの左下に移動 int min = std::min(up, right) - 1; for (int i = 0; i < min; i++) { std::cout << "^>" << std::endl; up--; right--; time--; } while (up > 1) { std::cout << "^" << std::endl; up--; time--; } while (right > 1) { std::cout << ">" << std::endl; right--; time--; } //この時点で目標地点の左下にいる while(time > 2){ std::cout << "<" << std::endl; std::cout << ">" << std::endl; time -= 2; } if (up == 0) { if(time == 1){ std::cout << ">" << std::endl; } else { std::cout << ">^" << std::endl; std::cout << "v" << std::endl; } } else if (right == 0) { if (time == 1) { std::cout << "^" << std::endl; } else { std::cout << ">^" << std::endl; std::cout << "<" << std::endl; } }else{ if(time == 2){ std::cout << ">" << std::endl; std::cout << "^" << std::endl; } else { std::cout << "^>" << std::endl; } } return 0; }