#6270: 為啥WA,幫我看看吧!!!


gcobs104628 (毛)


#include<iostream>
using namespace std;
main()
{
      int b;
      string v;
      while(cin>>b)
      {
                   int  a[9][9]={0},f[9]={0},k[9]={0},z=0;
                   for(int i=0;i<=8;i++)
                   {

                           for(int y=0;y<=8;y++)
                           {
                                   a[y][i]=b;
                                   cin>>b;

                           }
                    }
                   for(int i=0;i<=8;i++)
                   {

                           for(int y=0;y<=8;y++)
                           {
                                   f[a[y][i]-1]++;
                                   k[a[i][y]-1]++;
                                   if (f[a[y][i]-1]>1)
                                   {
                                                   z=1;                          判斷橫的
                                                   break;
                                   }
                                   if(k[a[i][y]-1]>1)                       判斷直的
                                   {
                                                     z=1;
                                                     break;
                                   }
                               
                                   
                           }
                           int f[9]={0};
                           int k[9]={0};
                            if(z==1)
                            {
                                    break;
                                    }  
                    }
                    for(int t=0;t<=8;t=t+3)                                          
                    {
                            for(int m=0;m<=8;m=m+3)
                            {
                                    int f[9]={0};
                                    int k[9]={0};
                                    for(int l=t;l<(t+3);l++)                                判斷九宮格
                                    {
                                            for(int e=m;e<(m+3);e++)
                                            {
                                                    f[a[e][l]-1]++;
                                                    if(f[a[e][l]-1]>1)
                                                    {
                                                                    z=1;
                                                                    break;
                                                    }
                                                    
                                            }
                                             if(z==1)
                                             {
                                                     break;
                                                     }  
                                    }
                                     if(z==1)
                                     {
                                             break;
                                             }  
                            }
                             if(z==1)
                             {
                                     break;
                                     }  
                    }
                      if(z==1)
                              {
                                  cout<<"no"<<endl;  
                              }
                              else
                              {
                                      cout<<"yes"<<endl;
                              }   
                              
                      cin>>v;    
                                  
      }
      return 0;
}