View Code of Problem 441

#include<bits/stdc++.h>
using namespace std;
int n,m,flag;
int a[15][15];
int main(){
	while(cin>>n>>m&&(n!=0||m!=0)){
		flag=1;
		int f=0;
		memset(a,0,sizeof(a));
		for(int i=1;i<=n;++i){
			for(int j=1;j<=m;++j){
				scanf("%d",&a[i][j]);
				if(a[i][j]==0)
				f=1;
			}
		}
		for(int i=1;i<=n;++i){
			for(int j=1;j<=m;++j){
				if(a[i][j]==1){
					if(a[i-1][j]==0&&a[i+1][j]==0&&a[i][j-1]==0&&a[i][j+1]==0)
					;
					else
					flag=0;
				}
			}
		}
		if(flag&&f)cout<<"Yes"<<endl;
		else cout<<"No"<<endl;
	}
}

Double click to view unformatted code.


Back to problem 441