#1127: 請問一下


ji3gj942l41l4 (請用中文打帳號)

學校 : 國立臺灣師範大學附屬高級中學
編號 : 3196
來源 : [140.112.4.195]
最後登入時間 :
2010-10-04 20:17:34
a022. 迴文 | From: [203.73.155.221] | 發表日期 : 2009-01-01 16:26

請問各位大大...

為什麼我這樣寫會WA?

  1. #include <stdio.h>   
    • #include <math.h>   
  2. int main(void){   
  3.     char string[1000];   
  4.     int i,size;   
  5.     while(scanf("%s",string)!=EOF){   
  6.        size=0;   
  7.        for(i=0;string[i]!='\0';i++)   
  8.           size++;   
  9.        int a=sqrt(size);   
  10.        for(i=0;i<=a;i++){   
  11.           if(string[i]!=string[size-i-1]){   
  12.              puts("no");   
  13.              break;   
  14.           }   
  15.        }   
  16.        if(i>=a)   
  17.           puts("yes");   
  18.     }   
  19.     return(0);   
  20. }  

而換這樣卻會AC

  1. #include <stdio.h>   
    • int main(void){   
  2.     char string[1000];   
  3.     int i,size;   
  4.     while(scanf("%s",string)!=EOF){   
  5.        size=0;   
  6.        for(i=0;string[i]!='\0';i++)   
  7.           size++;   
  8.        for(i=0;i<=size;i++){   
  9.           if(string[i]!=string[size-i-1]){   
  10.              puts("no");   
  11.              break;   
  12.           }   
  13.        }   
  14.        if(i>=size)   
  15.           puts("yes");   
  16.     }   
  17.     return(0);   
  18. }  

我自己測試似乎兩種都應該會AC

是我遺漏了哪裡OR有什麼奇怪的側資嗎...?

     
    ZeroJudge Forum