Submission #5292378
Source Code Expand
#include <bits/stdc++.h> using namespace std; using ll = long long; const int INF = 1<<29; const int MOD = (int)1e9 + 7; const double EPS = 1e-9; const int dx[4]={1,0,-1,0}; const int dy[4]={0,1,0,-1}; #ifdef LOCAL_ENV #define debug(var) std::cout<<#var" = "<<var<<std::endl #else #define debug(var) #endif #define p(var) std::cout<<var<<std::endl #define PI (acos(-1)) #define rep(i, n) for(int i=0, i##_length=(n); i< i##_length; ++i) #define repeq(i, n) for(int i=1, i##_length=(n); i<=i##_length; ++i) #define all(a) (a).begin(), (a).end() #define pb push_back inline double isnatural(double a) { return a>=0 && ceil(a)==floor(a); } template<typename T> inline T gcd(T a, T b) { return b ? gcd(b,a%b) : a; } template<typename T> inline T lcm(T a, T b) { return a / gcd(a, b) * b; } template<typename T1, typename T2>inline bool chmax(T1 &a, T2 b) { return a < b && (a = b, true); } template<typename T1, typename T2>inline bool chmin(T1 &a, T2 b) { return a > b && (a = b, true); } template<typename T1, typename T2> ostream& operator<<(ostream& s, const pair<T1, T2>& p) {return s << "(" << p.first << ", " << p.second << ")";} template<typename T> ostream& operator<<(ostream& s, const vector<T>& v) { for (int i = 0, len = v.size(); i < len; ++i){ s << v[i]; if (i < len - 1) s << "\t"; } return s; } template<typename T> ostream& operator<<(ostream& s, const vector< vector<T> >& vv) { for (int i = 0, len = vv.size(); i < len; ++i){ s << vv[i] << endl; } return s; } template<typename T1, typename T2> ostream& operator<<(ostream& s, const map<T1, T2>& m) { s << "{" << endl; for (typeof(m.begin()) itr = m.begin(); itr != m.end(); ++itr){ s << "\t" << (*itr).first << " : " << (*itr).second << endl; } s << "}" << endl; return s; } /*-----8<-----8<-----*/ int H,W; vector<string> a; queue<pair<int,int>> que; bool bfs(){ while(!que.empty()){ pair<int,int> q=que.front(); que.pop(); rep(i,4){ int nx=q.first+dx[i]; int ny=q.second+dy[i]; if(0<=nx && nx<H && 0<=ny && ny<W){ if(a[nx][ny]=='g'){ return true; }else if(a[nx][ny]=='.'){ a[nx][ny]='#'; que.push(make_pair(nx,ny)); } } } } return false; } int main() { cin >> H >> W; a=vector<string>(H,""); rep(i,H){ cin >> a[i]; rep(j,W){ if(a[i][j]=='s'){ a[i][j]='#'; que.push(make_pair(i,j)); } } } if(bfs()){ p("Yes"); }else{ p("No"); } return 0; }
Submission Info
Submission Time | |
---|---|
Task | A - 深さ優先探索 |
User | kyon2326 |
Language | C++14 (GCC 5.4.1) |
Score | 100 |
Code Size | 2522 Byte |
Status | AC |
Exec Time | 14 ms |
Memory | 512 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 100 / 100 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | 00_sample_01.txt, 00_sample_02.txt, 00_sample_03.txt, 00_sample_04.txt, 00_sample_05.txt |
All | 00_min_01.txt, 00_min_02.txt, 00_min_03.txt, 00_min_04.txt, 00_min_05.txt, 00_min_06.txt, 00_min_07.txt, 00_min_08.txt, 00_sample_01.txt, 00_sample_02.txt, 00_sample_03.txt, 00_sample_04.txt, 00_sample_05.txt, 01_rnd_00.txt, 01_rnd_01.txt, 01_rnd_02.txt, 01_rnd_03.txt, 01_rnd_04.txt, 01_rnd_05.txt, 01_rnd_06.txt, 01_rnd_07.txt, 01_rnd_08.txt, 01_rnd_09.txt, 01_rnd_10.txt, 01_rnd_11.txt, 01_rnd_12.txt, 01_rnd_13.txt, 01_rnd_14.txt, 01_rnd_15.txt, 01_rnd_16.txt, 01_rnd_17.txt, 01_rnd_18.txt, 01_rnd_19.txt, 02_rndhard_00.txt, 02_rndhard_01.txt, 02_rndhard_02.txt, 02_rndhard_03.txt, 02_rndhard_04.txt, 02_rndhard_05.txt, 02_rndhard_06.txt, 02_rndhard_07.txt, 02_rndhard_08.txt, 02_rndhard_09.txt, 02_rndhard_10.txt, 02_rndhard_11.txt, 02_rndhard_12.txt, 02_rndhard_13.txt, 02_rndhard_14.txt, 02_rndhard_15.txt, 02_rndhard_16.txt, 02_rndhard_17.txt, 02_rndhard_18.txt, 02_rndhard_19.txt, 02_rndhard_20.txt, 02_rndhard_21.txt, 02_rndhard_22.txt, 02_rndhard_23.txt, 02_rndhard_24.txt, 02_rndhard_25.txt, 02_rndhard_26.txt, 02_rndhard_27.txt, 02_rndhard_28.txt, 02_rndhard_29.txt, 02_rndhard_30.txt, 02_rndhard_31.txt, 02_rndhard_32.txt, 02_rndhard_33.txt, 02_rndhard_34.txt, 02_rndhard_35.txt, 02_rndhard_36.txt, 02_rndhard_37.txt, 02_rndhard_38.txt, 02_rndhard_39.txt, 03_rndhardsmall_00.txt, 03_rndhardsmall_01.txt, 03_rndhardsmall_02.txt, 03_rndhardsmall_03.txt, 03_rndhardsmall_04.txt, 03_rndhardsmall_05.txt, 03_rndhardsmall_06.txt, 03_rndhardsmall_07.txt, 03_rndhardsmall_08.txt, 03_rndhardsmall_09.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
00_min_01.txt | AC | 1 ms | 256 KB |
00_min_02.txt | AC | 1 ms | 256 KB |
00_min_03.txt | AC | 1 ms | 256 KB |
00_min_04.txt | AC | 1 ms | 256 KB |
00_min_05.txt | AC | 1 ms | 256 KB |
00_min_06.txt | AC | 1 ms | 256 KB |
00_min_07.txt | AC | 1 ms | 256 KB |
00_min_08.txt | AC | 1 ms | 256 KB |
00_sample_01.txt | AC | 1 ms | 256 KB |
00_sample_02.txt | AC | 1 ms | 256 KB |
00_sample_03.txt | AC | 1 ms | 256 KB |
00_sample_04.txt | AC | 1 ms | 256 KB |
00_sample_05.txt | AC | 1 ms | 256 KB |
01_rnd_00.txt | AC | 10 ms | 512 KB |
01_rnd_01.txt | AC | 10 ms | 512 KB |
01_rnd_02.txt | AC | 12 ms | 512 KB |
01_rnd_03.txt | AC | 13 ms | 512 KB |
01_rnd_04.txt | AC | 12 ms | 512 KB |
01_rnd_05.txt | AC | 10 ms | 512 KB |
01_rnd_06.txt | AC | 13 ms | 512 KB |
01_rnd_07.txt | AC | 13 ms | 512 KB |
01_rnd_08.txt | AC | 10 ms | 512 KB |
01_rnd_09.txt | AC | 10 ms | 512 KB |
01_rnd_10.txt | AC | 13 ms | 512 KB |
01_rnd_11.txt | AC | 10 ms | 512 KB |
01_rnd_12.txt | AC | 14 ms | 512 KB |
01_rnd_13.txt | AC | 10 ms | 512 KB |
01_rnd_14.txt | AC | 10 ms | 512 KB |
01_rnd_15.txt | AC | 12 ms | 512 KB |
01_rnd_16.txt | AC | 10 ms | 512 KB |
01_rnd_17.txt | AC | 14 ms | 512 KB |
01_rnd_18.txt | AC | 10 ms | 512 KB |
01_rnd_19.txt | AC | 11 ms | 512 KB |
02_rndhard_00.txt | AC | 10 ms | 512 KB |
02_rndhard_01.txt | AC | 10 ms | 512 KB |
02_rndhard_02.txt | AC | 11 ms | 512 KB |
02_rndhard_03.txt | AC | 11 ms | 512 KB |
02_rndhard_04.txt | AC | 10 ms | 512 KB |
02_rndhard_05.txt | AC | 10 ms | 512 KB |
02_rndhard_06.txt | AC | 10 ms | 512 KB |
02_rndhard_07.txt | AC | 10 ms | 512 KB |
02_rndhard_08.txt | AC | 10 ms | 512 KB |
02_rndhard_09.txt | AC | 10 ms | 512 KB |
02_rndhard_10.txt | AC | 10 ms | 512 KB |
02_rndhard_11.txt | AC | 10 ms | 512 KB |
02_rndhard_12.txt | AC | 10 ms | 512 KB |
02_rndhard_13.txt | AC | 10 ms | 512 KB |
02_rndhard_14.txt | AC | 10 ms | 512 KB |
02_rndhard_15.txt | AC | 10 ms | 512 KB |
02_rndhard_16.txt | AC | 10 ms | 512 KB |
02_rndhard_17.txt | AC | 10 ms | 512 KB |
02_rndhard_18.txt | AC | 10 ms | 512 KB |
02_rndhard_19.txt | AC | 10 ms | 512 KB |
02_rndhard_20.txt | AC | 10 ms | 512 KB |
02_rndhard_21.txt | AC | 10 ms | 512 KB |
02_rndhard_22.txt | AC | 10 ms | 512 KB |
02_rndhard_23.txt | AC | 10 ms | 512 KB |
02_rndhard_24.txt | AC | 13 ms | 512 KB |
02_rndhard_25.txt | AC | 10 ms | 512 KB |
02_rndhard_26.txt | AC | 10 ms | 512 KB |
02_rndhard_27.txt | AC | 10 ms | 512 KB |
02_rndhard_28.txt | AC | 10 ms | 512 KB |
02_rndhard_29.txt | AC | 10 ms | 512 KB |
02_rndhard_30.txt | AC | 10 ms | 512 KB |
02_rndhard_31.txt | AC | 10 ms | 512 KB |
02_rndhard_32.txt | AC | 10 ms | 512 KB |
02_rndhard_33.txt | AC | 10 ms | 512 KB |
02_rndhard_34.txt | AC | 10 ms | 512 KB |
02_rndhard_35.txt | AC | 10 ms | 512 KB |
02_rndhard_36.txt | AC | 10 ms | 512 KB |
02_rndhard_37.txt | AC | 10 ms | 512 KB |
02_rndhard_38.txt | AC | 10 ms | 512 KB |
02_rndhard_39.txt | AC | 10 ms | 512 KB |
03_rndhardsmall_00.txt | AC | 1 ms | 256 KB |
03_rndhardsmall_01.txt | AC | 1 ms | 256 KB |
03_rndhardsmall_02.txt | AC | 1 ms | 256 KB |
03_rndhardsmall_03.txt | AC | 1 ms | 256 KB |
03_rndhardsmall_04.txt | AC | 1 ms | 256 KB |
03_rndhardsmall_05.txt | AC | 1 ms | 256 KB |
03_rndhardsmall_06.txt | AC | 1 ms | 256 KB |
03_rndhardsmall_07.txt | AC | 1 ms | 256 KB |
03_rndhardsmall_08.txt | AC | 1 ms | 256 KB |
03_rndhardsmall_09.txt | AC | 1 ms | 256 KB |