Submission #420577
Source Code Expand
#include<iostream> #include<cstdio> #include<vector> #include<queue> #include<map> #include<string> #include<algorithm> #include<functional> using namespace std; #define FOR(i,a,b) for (int i=(a);i<(b);i++) #define RFOR(i,a,b) for (int i=(b)-1;i>=(a);i--) #define REP(i,n) for (int i=0;i<(n);i++) #define RREP(i,n) for (int i=(n)-1;i>=0;i--) #define INF 1<<30 #define MP make_pair #define mp make_pair #define pb push_back #define PB push_back #define DEBUG(x) cout<<#x<<": "<<x<<endl #define ll long long #define ull unsigned long long int H,W; struct pos{ int x,y; pos(int X,int Y){x=X;y=Y;} pos(){} }; int isover(int x,int y){ return(x<0 || y< 0 || x>=W || y>=H); } int main(){ cin >> H >> W; vector<string> field(H); bool flag[H][W]; REP(i,H)REP(j,W)flag[i][j]=false; int sx,sy;int gx,gy; REP(i,H){ cin>>field[i]; REP(j,W){ if(field[i][j]=='s') {sx=j;sy=i;} if(field[i][j]=='g'){gx=j;gy=i;} } } // cout<<sx<<sy<<endl; // cout<<gx<<gy<<endl; queue<pos> Q; Q.push(pos(sx,sy)); while(!Q.empty()){ pos current = Q.front(); // cout<<current.x<<" " <<current.y<<endl; Q.pop(); if(current.x==gx && current.y==gy){break;} int dx[]={1,0,-1,0}; int dy[]={0,1,0,-1}; REP(i,4){ if(isover(current.x+dx[i],current.y+dy[i])) continue; pos next=pos(current.x+dx[i],current.y+dy[i]); if(flag[next.y][next.x]) continue; if(field[next.y][next.x]=='#') continue; flag[next.y][next.x]=true; Q.push(next); // cout<<"L"<<endl; } } if(flag[gy][gx]){cout<<"Yes"<<endl;} else cout<<"No"<<endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | A - 深さ優先探索 |
User | ish_774 |
Language | C++ (GCC 4.9.2) |
Score | 100 |
Code Size | 1627 Byte |
Status | AC |
Exec Time | 59 ms |
Memory | 1324 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 | 27 ms | 800 KB |
00_min_02.txt | AC | 29 ms | 744 KB |
00_min_03.txt | AC | 27 ms | 920 KB |
00_min_04.txt | AC | 26 ms | 920 KB |
00_min_05.txt | AC | 25 ms | 920 KB |
00_min_06.txt | AC | 27 ms | 796 KB |
00_min_07.txt | AC | 26 ms | 928 KB |
00_min_08.txt | AC | 26 ms | 916 KB |
00_sample_01.txt | AC | 27 ms | 916 KB |
00_sample_02.txt | AC | 27 ms | 924 KB |
00_sample_03.txt | AC | 26 ms | 792 KB |
00_sample_04.txt | AC | 26 ms | 840 KB |
00_sample_05.txt | AC | 27 ms | 812 KB |
01_rnd_00.txt | AC | 44 ms | 1308 KB |
01_rnd_01.txt | AC | 51 ms | 1324 KB |
01_rnd_02.txt | AC | 49 ms | 1316 KB |
01_rnd_03.txt | AC | 47 ms | 1316 KB |
01_rnd_04.txt | AC | 48 ms | 1320 KB |
01_rnd_05.txt | AC | 43 ms | 1316 KB |
01_rnd_06.txt | AC | 52 ms | 1304 KB |
01_rnd_07.txt | AC | 52 ms | 1312 KB |
01_rnd_08.txt | AC | 42 ms | 1316 KB |
01_rnd_09.txt | AC | 49 ms | 1316 KB |
01_rnd_10.txt | AC | 54 ms | 1320 KB |
01_rnd_11.txt | AC | 46 ms | 1312 KB |
01_rnd_12.txt | AC | 57 ms | 1316 KB |
01_rnd_13.txt | AC | 45 ms | 1316 KB |
01_rnd_14.txt | AC | 43 ms | 1312 KB |
01_rnd_15.txt | AC | 50 ms | 1312 KB |
01_rnd_16.txt | AC | 43 ms | 1316 KB |
01_rnd_17.txt | AC | 59 ms | 1320 KB |
01_rnd_18.txt | AC | 43 ms | 1316 KB |
01_rnd_19.txt | AC | 46 ms | 1316 KB |
02_rndhard_00.txt | AC | 43 ms | 1320 KB |
02_rndhard_01.txt | AC | 42 ms | 1312 KB |
02_rndhard_02.txt | AC | 42 ms | 1308 KB |
02_rndhard_03.txt | AC | 44 ms | 1308 KB |
02_rndhard_04.txt | AC | 42 ms | 1312 KB |
02_rndhard_05.txt | AC | 42 ms | 1312 KB |
02_rndhard_06.txt | AC | 42 ms | 1312 KB |
02_rndhard_07.txt | AC | 42 ms | 1320 KB |
02_rndhard_08.txt | AC | 43 ms | 1316 KB |
02_rndhard_09.txt | AC | 41 ms | 1320 KB |
02_rndhard_10.txt | AC | 43 ms | 1320 KB |
02_rndhard_11.txt | AC | 43 ms | 1320 KB |
02_rndhard_12.txt | AC | 44 ms | 1316 KB |
02_rndhard_13.txt | AC | 41 ms | 1312 KB |
02_rndhard_14.txt | AC | 43 ms | 1324 KB |
02_rndhard_15.txt | AC | 42 ms | 1312 KB |
02_rndhard_16.txt | AC | 45 ms | 1324 KB |
02_rndhard_17.txt | AC | 42 ms | 1312 KB |
02_rndhard_18.txt | AC | 42 ms | 1312 KB |
02_rndhard_19.txt | AC | 42 ms | 1320 KB |
02_rndhard_20.txt | AC | 41 ms | 1312 KB |
02_rndhard_21.txt | AC | 42 ms | 1316 KB |
02_rndhard_22.txt | AC | 43 ms | 1320 KB |
02_rndhard_23.txt | AC | 42 ms | 1316 KB |
02_rndhard_24.txt | AC | 41 ms | 1320 KB |
02_rndhard_25.txt | AC | 42 ms | 1316 KB |
02_rndhard_26.txt | AC | 44 ms | 1312 KB |
02_rndhard_27.txt | AC | 44 ms | 1320 KB |
02_rndhard_28.txt | AC | 48 ms | 1308 KB |
02_rndhard_29.txt | AC | 45 ms | 1248 KB |
02_rndhard_30.txt | AC | 45 ms | 1316 KB |
02_rndhard_31.txt | AC | 44 ms | 1312 KB |
02_rndhard_32.txt | AC | 44 ms | 1308 KB |
02_rndhard_33.txt | AC | 45 ms | 1320 KB |
02_rndhard_34.txt | AC | 44 ms | 1312 KB |
02_rndhard_35.txt | AC | 47 ms | 1312 KB |
02_rndhard_36.txt | AC | 42 ms | 1320 KB |
02_rndhard_37.txt | AC | 44 ms | 1308 KB |
02_rndhard_38.txt | AC | 43 ms | 1252 KB |
02_rndhard_39.txt | AC | 44 ms | 1312 KB |
03_rndhardsmall_00.txt | AC | 27 ms | 924 KB |
03_rndhardsmall_01.txt | AC | 30 ms | 764 KB |
03_rndhardsmall_02.txt | AC | 25 ms | 804 KB |
03_rndhardsmall_03.txt | AC | 26 ms | 928 KB |
03_rndhardsmall_04.txt | AC | 26 ms | 808 KB |
03_rndhardsmall_05.txt | AC | 26 ms | 800 KB |
03_rndhardsmall_06.txt | AC | 26 ms | 800 KB |
03_rndhardsmall_07.txt | AC | 26 ms | 804 KB |
03_rndhardsmall_08.txt | AC | 26 ms | 804 KB |
03_rndhardsmall_09.txt | AC | 26 ms | 804 KB |