24h購物| | PChome| 登入
2009-01-30 21:42:41| 人氣355| 回應0 | 上一篇 | 下一篇

2007 NPSC G. 折方塊

推薦 0 收藏 0 轉貼0 訂閱站台

這題可能會想問很多問題,在此無法詳細解答。

xxxoxx ←上跟中間必有連結點,且只有1個
xoooox ←個數只能藉於2~4個
xxoxxx ←下跟中間必有連結點,且只有1個

特例:
xxxooo ←額外考慮
xoooxx
xxxxxx 答案為yes

xxooxx
xooxxx
xxooxx 答案為no
------------------------------------------------------------
可能為鑽漏洞,歡迎推翻!

/**********************************************************/

  1. #include<stdio.h>   
  2. #include<stdlib.h>   
  3. main()   
  4. {   
  5.  int n;   
  6.  while(scanf("%d ",&n)==1)   
  7.   {   
  8.    int a,b,c;   
  9.    for(a=0;a<n;a++)   
  10.     {   
  11.      char line1[7],line2[7],line3[7];   
  12.      gets(line1);   
  13.      gets(line2);   
  14.      gets(line3);   
  15.      int temp1=0,temp2=0,temp3=0,temp4=0,temp5=0,flag=0,flag1=0;   
  16.      for(b=0;b<6;b++)   
  17.       {   
  18.        if(line2[b]=='o') temp1++;   
  19.        if(line2[b]=='o'&&line1[b]=='o') temp2++;   
  20.        if(line2[b]=='o'&&line3[b]=='o') temp3++;   
  21.        if(line1[b]=='o') temp4++;   
  22.        if(line3[b]=='o') temp5++;   
  23.        if(line1[b]=='o'&&line3[b]=='o') flag1=1;   
  24.       }   
  25.      if(temp1<2||temp1>4) flag=1; /*中間的個數介於2~4*/  
  26.      if(temp2!=1||temp3!=1) flag=1;   
  27.      if(temp1==3&&temp2==1&&temp4==3) flag=0;   
  28.      if(temp1==3&&temp3==1&&temp5==3) flag=0;   
  29.      if(temp1==2&&flag1==1) flag=1;   
  30.      if(flag==0)   
  31.       printf("yes\n");   
  32.      else  
  33.       printf("no\n");     
  34.     }    
  35.   }   
  36.  return 0;   
  37. }  

台長: 來源不明
人氣(355) | 回應(0)| 推薦 (0)| 收藏 (0)| 轉寄
全站分類: 數位資訊(科技、網路、通訊、家電) | 個人分類: NPSC |
此分類下一篇:2007 NPSC C. 小姐,我認識妳嗎?
此分類上一篇:2006 NPSC A. 幼稚鬼的把戲

是 (若未登入"個人新聞台帳號"則看不到回覆唷!)
* 請輸入識別碼:
請輸入圖片中算式的結果(可能為0) 
(有*為必填)
TOP
詳全文