#1994: 不知道是哪裡有問題

Unknown User


#include<stdio.h>
#include <iostream>
using namespace std;
int main()
{
   int i,k,temp[15],j,sud[15][15],find,l;
   string input;
   char te;
   while(getline(cin,input))
   {
      for(j=1;j<=9;j++)
         sud[1][j]=input[2*(j-1)]-48;

      for(i=2;i<=9;i++)
      {
         getline(cin,input);
         for(j=1;j<=9;j++)
            sud[i][j]=input[2*(j-1)]-48;
      }

      find=0;
      for(i=1;i<=9;++i)
      {
         for(j=1;j<=9;++j)
            temp[j]=0;
         for(k=1;k<=9;k++)
            temp[sud[i][k]]++;
         for(j=1;j<=9;++j)
            if(temp[j]!=1)
               find=1;
      }
      if(find==0)
      for(i=1;i<=9;++i)
      {
         for(j=1;j<=9;++j)
            temp[j]=0;
         for(k=1;k<=9;k++)
            temp[sud[k][i]]++;
         for(j=1;j<=9;++j)
            if(temp[j]!=1)
               find=1;
      }
      if(find==0)
      for(i=1;i<=7;i=i+3)
      {
   for(j=1;j<=7;j=j+3)
         {
   for(k=1;k<=9;++k)
               temp[k]=0;
    for(k=i;k<=i+2;k++)
      for(l=j;l<=j+2;l++)
       temp[sud[k][l]]++;
   for(k=1;k<=9;++k)
               if(temp[k]!=1)
                  find=1;
   }
   }
    
   if(find==0)
   printf("yes\n");
   else
   printf("no\n");
}
}
用Dev C++跑沒問題

答案在第二個就錯了?????

#2243: Re:不知道是哪裡有問題


P82typeM (有心人士)


  

每進入一次while迴圈find要重新歸零吧?