//小心一点就好了。悲剧最近经常在小地方出错。做题三思! #include <stdio.h> int map[10][10]; int tjx(int y) { int stat[10]={0}; int i; for(i=1;i<=9;i++) stat[map[i][y]]++; for(i=1;i<=9;i++) if(stat[i]!=1) return 0; return 1; } int tjy(int x) { int stat[10]={0}; int i; for(i=1;i<=9;i++) stat[map[x][i]]++; for(i=1;i<=9;i++) if(stat[i]!=1) return 0; return 1; } int tjn(int x,int y) { int stat[10]={0}; int i,r; for(i=x;i<=x+2;i++) for(r=y;r<=y+2;r++) stat[map[i][r]]++; for(i=1;i<=9;i++) if(stat[i]!=1) return 0; return 1; } int main() { int i,r; for(i=1;i<=9;i++) for(r=1;r<=9;r++) scanf("%d",&map[i][r]); int heng=0; int shu=0; int nine=0; for(i=1;i<=9;i++) { shu+=tjx(i); heng+=tjy(i); } nine+=tjn(1,1); nine+=tjn(1,4); nine+=tjn(1,7); nine+=tjn(4,1); nine+=tjn(4,4); nine+=tjn(4,7); nine+=tjn(7,1); nine+=tjn(7,4); nine+=tjn(7,7); if(heng+shu+nine==27) printf("1"); else printf("0"); return 0; }