diff --git a/sdjz group30最终版.cpp b/sdjz group30最终版.cpp new file mode 100644 index 0000000..12b765c --- /dev/null +++ b/sdjz group30最终版.cpp @@ -0,0 +1,148 @@ +#include +#include +#include +int a[10][10]; +int e,f,g; +void input() +{ + for(int i=1;i<10;i++) + for(int j=1;j<10;j++) + scanf("%d",&a[i][j]); +} +void random() +{ + for(int i=1;i<10;i++) + for(int j=1;j<10;j++) + a[i][j]=rand()%10; +} +void format(int s[][10]) +{ + printf("-------------------------\n"); + for(int i=1;i<10;i++) + { + printf("| "); + for(int j=1;j<10;j++) + { + + printf("%d ",s[i][j]); + if(j%3==0) printf("| "); + } + printf("\n"); + if(i%3==0) printf("-------------------------\n"); + } +} +bool ok(int x,int y,int s[][10]) +{ + int b=s[x][y]; + int a1=x,a2=y; + for(int j=1;j<=9;j++) + { + if(j==y) continue; + if(s[x][j]==b) + { + e=0;f=x;g=b; + return false; + } + } + for(int i=1;i<=9;i++) + { + if(i==x) continue; + if(s[i][y]==b) + { + e=1;f=y;g=b; + return false; + } + } + x=(x-1)/3*3; + y=(y-1)/3*3; + int block; + if(x+1==1) + { + if(y+1==1) block=1; + else if(y+1==4) block=2; + else if(y+1==7) block=3; + } + else if(x+1==4) + { + if(y+1==1) block=4; + else if(y+1==4) block=5; + else if(y+1==7) block=6; + } + else if(x+1==7) + { + if(y+1==1) block=7; + else if(y+1==4) block=8; + else if(y+1==7) block=9; + } + for(int i=x+1;i