Submission #3046108


Source Code Expand

#include<stdio.h>

int H,W;
char c[500][500];
_Bool reached[500][500];
int dx[4]={1,0,-1,0};
int dy[4]={0,1,0,-1};
_Bool flag=0;

void search(int y,int x){
	if(y<0 || x>=H || x<0 || x>=W)return;
	if(reached[y][x]==1)return;
	if(c[y][x]=='#')return;
	reached[y][x]=1;
	if(c[y][x]=='g')flag=1;
	for(int i=0;i<4;i++){
		int a=y+dy[i],b=x+dx[i];
		search(a[i],b[i]);
	return;
}

int main(){
	scanf("%d %d",&H,&W);
	for(int i=0;i<H;i++)scanf("%s",c[i]);
	
	for(int i=0;i<H;i++){
		for(int j=0;j<W;j++){
			if(c[i][j]=='s')search(i,j);
		}
	}
	
	if(flag==1)printf("Yes\n");
	else printf("No\n");
	
	return 0;
}

Submission Info

Submission Time
Task A - 深さ優先探索
User tomy
Language C (GCC 5.4.1)
Score 0
Code Size 639 Byte
Status CE

Compile Error

./Main.c: In function ‘search’:
./Main.c:18:11: error: subscripted value is neither array nor pointer nor vector
   search(a[i],b[i]);
           ^
./Main.c:18:16: error: subscripted value is neither array nor pointer nor vector
   search(a[i],b[i]);
                ^
./Main.c:36:1: error: expected declaration or statement at end of input
 }
 ^