結果

問題 No.1588 Connection
ユーザー norikame
提出日時 2021-07-08 23:18:47
言語 C++17
(gcc 13.3.0 + boost 1.87.0)
結果
WA  
(最新)
QLE  
(最初)
実行時間 -
コード長 1,959 bytes
コンパイル時間 2,059 ms
コンパイル使用メモリ 205,384 KB
最終ジャッジ日時 2025-01-22 19:22:01
ジャッジサーバーID
(参考情報)
judge4 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample WA * 1
other AC * 26 WA * 5
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

#include <bits/stdc++.h>
using namespace std;
using ll = long long;
#define rep(i, n) for (int i=0; i<(int)(n); ++(i))
#define rep3(i, m, n) for (int i=(m); (i)<(int)(n); ++(i))
#define repr(i, n) for (int i=(int)(n)-1; (i)>=0; --(i))
#define rep3r(i, m, n) for (int i=(int)(n)-1; (i)>=(int)(m); --(i))
#define all(x) (x).begin(), (x).end()
const int INF = (int)(1e9);
int query(int a, int b) {
++a; ++b;
cout << a << ' ' << b << endl;
cout.flush();
string s;
cin >> s;
if (s == (string)("Black")) return 1;
else if (s == (string)("White")) return 0;
else return -1;
}
int main() {
int n, m;
cin >> n >> m;
vector<vector<int>> b(n, vector<int>(n, -1));
b[0][0] = b[n-1][n-1] = 1;
queue<pair<int, int>> que;
vector<vector<int>> dist(n, vector<int>(n, INF));
int mcnt = 2, qcnt = 0;
bool ok = false;
que.emplace(0, 0);
dist[0][0] = 0;
while (!que.empty()) {
auto p = que.front(); que.pop();
int y = p.first, x = p.second, d = dist[y][x];
const vector<int> dy = { -1, 0, 1, 0 }, dx = { 0, 1, 0, -1 };
rep(i1, 4) {
int ny = y + dy[i1], nx = x + dx[i1];
if (ny<0 || ny>=n || nx<0 || nx>=n) continue;
if (ny==n-1 && nx==n-1) {
ok = true;
break;
}
if (dist[ny][nx] <= d+1) continue;
if (b[ny][nx] == -1) {
if (mcnt >= m) break;
if (qcnt >= 2999) break;
int qres = query(ny, nx);
++qcnt;
if (qres == 1) ++mcnt;
b[ny][nx] = qres;
}
if (b[ny][nx] == 0) continue;
if (b[ny][nx] == 1) {
que.emplace(ny, nx);
dist[ny][nx] = d + 1;
}
}
if (ok || mcnt>=m || qcnt>=2999) break;
}
if (ok) cout << "Yes" << endl;
else cout << "No" << endl;
return 0;
}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0