結果
| 問題 |
No.232 めぐるはめぐる (2)
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2015-06-26 23:00:42 |
| 言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 2,019 bytes |
| コンパイル時間 | 1,645 ms |
| コンパイル使用メモリ | 163,824 KB |
| 実行使用メモリ | 9,172 KB |
| 最終ジャッジ日時 | 2024-07-07 18:19:54 |
| 合計ジャッジ時間 | 4,069 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 9 WA * 13 |
コンパイルメッセージ
main.cpp: In function ‘int main()’:
main.cpp:35:17: warning: ‘dx’ may be used uninitialized in this function [-Wmaybe-uninitialized]
35 | int nx = x + dx;
| ^~
main.cpp:34:17: warning: ‘dy’ may be used uninitialized in this function [-Wmaybe-uninitialized]
34 | int ny = y + dy;
| ^~
ソースコード
#include <bits/stdc++.h>
#define rep(i, n) for (int i = 0; i < (n); i++)
#define rep2(i, a, b) for (int i = (a); i < (b); i++)
#define rrep(i, n) for (int i = (n) - 1; i >= 0; i--)
#define rrep2(i, a, b) for (int i = (a) - 1; i >= (b); i--)
#define all(v) (v).begin(), (v).end()
using namespace std;
typedef long long ll;
const ll inf = 1e9;
const ll mod = 1e9 + 7;
int main() {
int T, A, B;
cin >> T >> A >> B;
int x = 0, y = 0;
vector<string> ans;
rep (i, T) {
if (i < T - 1) {
int dy, dx;
if (x < A && y < B) {
dy = 1;
dx = 1;
} else if (x < A) {
dy = 0;
dx = 1;
} else if (y < B) {
dy = 1;
dx = 0;
}
int ny = y + dy;
int nx = x + dx;
if (ny == A && nx == B) {
if (y < B) {
if (x < A) dx = 1, dy = 0;
if (x == A) dx = -1, dy = 0;
} else {
if (y < B) dy = 1, dx = 0;
if (y == B) dy = -1, dx = 0;
}
ny = y + dy;
nx = x + dx;
}
string s;
if (dy > 0) s += "^";
if (dy < 0) s += "v";
if (dx > 0) s += ">";
if (dx < 0) s += "<";
ans.push_back(s);
y = ny;
x = nx;
} else {
int dx = A - x;
int dy = B - y;
if (abs(dx) > 1 || abs(dy > 1)) {
cout << "NO" << endl;
} else {
string s;
cout << "YES" << endl;
if (dy > 0) s += "^";
if (dy < 0) s += "v";
if (dx > 0) s += ">";
if (dx < 0) s += "<";
ans.push_back(s);
for (string e : ans) {
cout << e << endl;
}
}
}
}
}