3,882
社区成员




#include <stdio.h>
int main() {
int y,x,n,flag;
static char data[9][9];
scanf("%d\n", &n);
while (n > 0) {
scanf("%s%s" ,data[1]+3,data[2]+3 );
scanf("%s%s%s",data[3]+1,data[4]+1,data[5]+1);
scanf("%s%s" ,data[6]+3,data[7]+3 );
flag=0;
for(y=1; y<8; y++) {
for(x=1; x<8; x++) {
if(data[y ][x ]!='1') continue; //当前位置没棋子则跳过
if(data[y-1][x ]=='1'&&data[y+1][x ]=='0' //垂直方向:110
||data[y-1][x ]=='0'&&data[y+1][x ]=='1' //垂直方向:011
||data[y ][x-1]=='1'&&data[y ][x+1]=='0' //水平方向:110
||data[y ][x-1]=='0'&&data[y ][x+1]=='1') { //水平方向:011
flag=1; //出现以上4种情况表示有解
break;
}
}
if(flag==1) break;
}
n--;
if (flag == 1) printf("no\n");
else printf("yes\n");
}
return 0;
}
#include <stdio.h>
int main() {
int i,j,n,flag;
char data[9][9]= {'\0'};
scanf("%d\n", &n);
while (n > 0) {
scanf("%s%s",data[1]+3,data[2]+3);
scanf("%s%s%s",data[3]+1,data[4]+1,data[5]+1);
scanf("%s%s",data[6]+3,data[7]+3);
flag=0;
for(i=1; i<8; i++) {
for(j=1; j<8; j++) {
if(data[i][j]!='1') continue; //当前位置没棋子则跳过
if(data[i-1][j]=='1'&&data[i+1][j]=='0' //垂直方向:110
||data[i-1][j]=='0'&&data[i+1][j]=='1' //垂直方向:011
||data[i][j-1]=='1'&&data[i][j+1]=='0' //水平方向:110
||data[i][j-1]=='0'&&data[i][j+1]=='1') { //水平方向:011
flag=1; //出现以上4种情况表示有解
break;
}
}
if(flag==1) break;
}
n--;
if (flag == 1) printf("no\n");
else printf("yes\n");
}
return 0;
}