結果
問題 | No.1588 Connection |
ユーザー |
![]() |
提出日時 | 2021-07-08 23:36:15 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
RE
|
実行時間 | - |
コード長 | 1,220 bytes |
コンパイル時間 | 4,373 ms |
コンパイル使用メモリ | 237,256 KB |
実行使用メモリ | 25,476 KB |
平均クエリ数 | 1.94 |
最終ジャッジ日時 | 2024-07-17 12:37:09 |
合計ジャッジ時間 | 11,998 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | RE * 1 |
other | AC * 2 RE * 29 |
ソースコード
#include <bits/stdc++.h>#include <atcoder/all>using namespace atcoder;using mint = modint1000000007;using namespace std;#define rep(i,n) for(int i=0;i<n;i++)const int MOD=1e9+7;const long long INF = 1LL<<60;void YN(bool x){if(x) cout<<"Yes";else cout<<"No";}int dx[]={1,0,0,-1},dy[]={0,1,-1,0};int main(){int N,M;cin>>N>>M;M-=2;vector<vector<int>> D(N,vector<int>(N,-1));D[0][0]=0;vector<vector<char>> S(N,vector<char>(N,'G'));S[0][0]='B';queue<pair<int,int>>q;q.push({0,0});while(q.size()){auto x=q.front().first,y=q.front().second;q.pop();if(N-1-x+N-1+y-1>M)continue;rep(i,4){auto nx=x+dx[i],ny=y+dy[i];if(nx==N-1&&ny==N-1){cout<<"Yes";return 0;}if(S[nx][ny]!='G')continue;cout<<nx+1<<' '<<ny+1<<endl;string s;cin>>s;if(s=="-1"){cout<<"No";return 0;}if(s=="Black"){S[nx][ny]='B';q.push({nx,ny});M--;}else S[nx][ny]='W';}}cout<<"No";}