青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Counterfeit Dollar

該題ZOJ題號為1184, POJ題號為1013.

題目描述如下:

Sally Jones has a dozen Voyageur silver dollars. However, only eleven of the coins are true silver dollars; one coin is counterfeit even though its color and size make it indistinguishable from the real silver dollars. The counterfeit coin has a different weight from the other coins but Sally does not know if it is heavier or lighter than the real coins.

Happily, Sally has a friend who loans her a very accurate balance scale. The friend will permit Sally three weighings to find the counterfeit coin. For instance, if Sally weighs two coins against each other and the scales balance then she knows these two coins are true. Now if Sally weighs one of the true coins against a third coin and the scales do not balance then Sally knows the third coin is counterfeit and she can tell whether it is light or heavy depending on whether the balance on which it is placed goes up or down, respectively.

By choosing her weighings carefully, Sally is able to ensure that she will find the counterfeit coin with exactly three weighings.


Input
The first line of input is an integer n (n > 0) specifying the number of cases to follow. Each case consists of three lines of input, one for each weighing. Sally has identified each of the coins with the letters A-L. Information on a weighing will be given by two strings of letters and then one of the words ``up'', ``down'', or ``even''. The first string of letters will represent the coins on the left balance; the second string, the coins on the right balance. (Sally will always place the same number of coins on the right balance as on the left balance.) The word in the third position will tell whether the right side of the balance goes up, down, or remains even.


Output
For each case, the output will identify the counterfeit coin by its letter and tell whether it is heavy or light. The solution will always be uniquely determined.


Sample Input

1
ABCD EFGH even
ABCI EFJK up
ABIJ EFGH even


Sample Output
K is the counterfeit coin and it is light.

【分析】該題屬于枚舉范疇。沒有比較巧妙的可以一步到位求出結果的方法,可以一次枚舉這12枚錢幣,假設其為假,然后代入到3次稱量判斷中,如果使三次判斷都成立且判斷結果相同,那么毫無疑問這枚錢幣是假的。首先可以進行預處理,比較結果為EVEN的可以判定兩邊的錢幣都是真的,不必參與到枚舉中來。對于上面的輸入用例,假設K是假的,代入判斷1k不出現,那么兩邊重量應相等,成立。繼續稱量2k出現在右邊,結果是UP,亦成立,且據此知道k是較輕的,因此k在右邊,而天平右邊翹起。下面進行判斷3

,k沒有出現在天平兩邊,而且結果為even成立。通過三次稱量判斷,且結果一致,可以肯定k就是假幣,且較輕。為了說明為題,對于上例假設L是假幣。代入稱量1L不出現,結果even成立,稱量2,L不出現,結果為up不成立,因為只有一枚假幣,現假設L為假幣,而在L不出現的情況下天平不平衡,故L不是假幣。按照上述算法進行枚舉,遇到可以肯定是假幣的貨幣時算法終止。

       需要注意的是當假設一枚硬幣為假且通過三次稱量時,需要判斷三次稱量k的輕重情況是否一致,如果一次推得該硬幣較輕,而另一次卻判斷該硬幣較重,那么該硬幣肯定不是假幣。在判斷是需要注意當左右兩邊都不出現假設為假的硬幣時,需要特殊處理,不能簡單的比較3次硬幣輕重是否相同,在左右兩邊都不出現該硬幣的情況下,不應該把這次測量納入比較的范疇。除此之外需要的就是細心了,本人因為打印的時候多打印了個the,WA6次,檢查了半個多小時,有種欲哭無淚的感覺。

具體代碼如下:

  1 #include <stdio.h>
  2 #include <stdlib.h>
  3 #include <string.h>
  4 
  5 char left[3][7], right[3][7];
  6 char result[3][6];
  7 int a[15];
  8 int w;
  9 
 10 int judge(char ch)
 11 {
 12     int r1, r2;
 13     int i;
 14     int a[3];
        /*對當前假設的硬幣進行判斷*/
 15     for (i = 0; i < 3++i)
 16     {
 17         r1 = strcmp(result[i], "even");
 18         r2 = strcmp(result[i], "up");
 19         if (strchr(left[i], ch) != NULL)
 20         {
 21             if (r1 == 0)
 22                 return 0;
 23             else if (r2  == 0)
 24                 a[i] = 1;
 25             else 
 26                 a[i] = -1;
 27         }
 28         else if (strchr(right[i], ch) != NULL)
 29         {
 30             if (r1 == 0)
 31                 return 0;
 32             else if (r2 == 0)
 33                 a[i] = -1;
 34             else 
 35                 a[i] = 1;
 36         }
 37         else
 38         {
 39             if (r1 != 0)
 40                 return 0;
 41             a[i] = 3;
 42         } 
 43     }
        /*判斷結果是否一致*/
 44     if (a[0!= 3)
 45         w = a[0];
 46     else if (a[1!= 3)
 47         w = a[1];
 48     else if (a[2!= 3)
 49         w = a[2];
 50     for (i = 0; i < 3++i)
 51     {
 52         if (a[i] != 3 && a[i] != w)
 53         {
 54                 return 0;
 55         }
 56     }
 57     return 1;
 58 }
 59 int main(void)
 60 {
 61     int n;
 62     int i;
 63     char *p;
 64     char ch;
 65     int r;
 66     scanf("%d%*c"&n);    
 67     while (n--)
 68     {
 69         memset(a, 0sizeof(a));
 70         for (i = 0; i < 3++i)
 71         {
 72             scanf("%s%s%s", left[i], right[i], result[i]);
 73             if (strcmp (result[i], "even"== 0)
 74             {
 75                 p = left[i];
 76                 while (*!= '\0')
 77                 {
 78                     a[*p-'A'= 1;
 79                     ++p;
 80                 }
 81                 p = right[i];
 82                 while (*!= '\0')
 83                 {
 84                     a[*p-'A'= 1;
 85                     ++p;
 86                 }
 87             }
 88         }
 89         for (ch = 'A'; ch <= 'L'++ch)
 90         {
 91             if (a[ch-'A']  == 1)
 92                 continue;
 93             r = judge(ch);
 94             if (r == 1)
 95             {
 96                 if (w > 0)
 97                 {
 98                     printf("%c is the counterfeit coin and it is heavy.\n", ch);
 99                 }
100                 else
101                 {
102                     printf("%c is the counterfeit coin and it is light.\n", ch);
103                 }
104                 break;
105             }
106         }
107     }
108     return 0;
109 }


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


posts - 12, comments - 1, trackbacks - 0, articles - 1

Copyright © 李東亮

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久爱www久久做| 欧美激情视频一区二区三区免费| 亚洲精品一区二区三区av| 免费91麻豆精品国产自产在线观看| 在线国产精品播放| 亚洲高清在线观看一区| 欧美麻豆久久久久久中文| 在线视频免费在线观看一区二区| 日韩视频一区二区三区在线播放| 欧美午夜精品久久久久久浪潮 | 久久先锋影音| 亚洲高清视频一区| 亚洲人成久久| 国产精品av一区二区| 欧美在线影院| 久久综合亚州| 亚洲天堂av电影| 欧美一区二区| 亚洲欧洲精品一区二区三区| 日韩亚洲欧美成人一区| 国产亚洲电影| 亚洲美女在线看| 国外视频精品毛片| 日韩午夜激情电影| 红桃视频成人| 宅男噜噜噜66一区二区66| 激情丁香综合| 亚洲视频在线观看视频| 亚洲国产精品成人va在线观看| 国产精品99久久久久久久久 | 狂野欧美激情性xxxx欧美| 亚洲图片欧美午夜| 麻豆精品网站| 久久精品国产第一区二区三区最新章节 | 免费亚洲一区| 欧美中在线观看| 欧美日韩一卡| 亚洲盗摄视频| 国产日韩欧美亚洲一区| 日韩一区二区免费看| 1769国内精品视频在线播放| 亚洲一区二区三区777| 亚洲精品在线二区| 久久久久女教师免费一区| 亚洲欧美在线播放| 欧美日韩亚洲高清| 欧美韩日高清| 18成人免费观看视频| 午夜国产欧美理论在线播放 | 国产伦精品一区二区三区视频黑人| 欧美99久久| 激情欧美一区二区三区在线观看 | 欧美va天堂在线| 国产欧美日韩综合| 亚洲夜间福利| 亚洲综合电影| 国产精品h在线观看| 亚洲精品日韩一| 亚洲伦理一区| 欧美成人自拍视频| 亚洲高清在线观看一区| 91久久国产综合久久91精品网站 | 亚洲国内精品| 亚洲精品中文字| 欧美极品在线观看| 亚洲欧洲一区二区三区久久| 亚洲精选一区| 欧美日韩精品二区| 一本色道久久综合亚洲精品按摩| 中文精品在线| 国产精品久久久久久久久免费| 在线视频日本亚洲性| 午夜性色一区二区三区免费视频| 国产精品乱码一区二区三区| 亚洲一区二区三区国产| 久久精品色图| 亚洲高清免费| 欧美另类专区| 亚洲香蕉网站| 久久亚洲美女| 99国内精品久久久久久久软件| 欧美日韩一区国产| 亚洲欧美日韩一区| 免费在线观看一区二区| 亚洲三级网站| 国产精品久久一卡二卡| 亚洲综合不卡| 欧美α欧美αv大片| 日韩亚洲国产欧美| 国产精品美女久久福利网站| 午夜在线精品偷拍| 亚洲国产成人午夜在线一区| 亚洲一区二区三区高清不卡| 国产一区二区三区四区五区美女| 久久影院午夜片一区| 亚洲乱码视频| 久久婷婷人人澡人人喊人人爽| 亚洲国产成人精品久久| 国产精品黄色| 欧美成人免费网| 亚洲免费在线播放| 亚洲经典在线看| 欧美综合激情网| 99精品免费| 红桃视频一区| 国产精品日韩欧美一区二区三区| 久久综合亚州| 午夜精品久久久久久| 亚洲黄色性网站| 久久久精品国产免费观看同学| 亚洲片在线资源| 国产夜色精品一区二区av| 欧美片第一页| 久久久亚洲成人| 亚洲综合好骚| 一区二区不卡在线视频 午夜欧美不卡在 | 欧美三级视频| 免费久久99精品国产| 亚洲欧美一区二区激情| 亚洲精品乱码| 欧美高清不卡| 免费人成精品欧美精品| 欧美在线视频不卡| 亚洲在线观看免费视频| 亚洲精品午夜| 亚洲国产高清自拍| 国产综合欧美| 国产日韩亚洲| 国产精自产拍久久久久久| 欧美精品一二三| 欧美ab在线视频| 久久夜色撩人精品| 欧美一区二区三区成人| 亚洲在线视频免费观看| 一区二区三区日韩精品视频| 亚洲久久一区| 亚洲人成免费| 亚洲精品一区在线观看| 亚洲国产日韩欧美| 欧美激情中文不卡| 亚洲电影激情视频网站| 亚洲二区视频在线| 亚洲欧洲日韩综合二区| 91久久精品国产91性色| 亚洲精品视频在线播放| 亚洲国产综合91精品麻豆| 亚洲福利国产精品| 亚洲国产精品一区二区三区| 亚洲黄一区二区| 日韩午夜av| 亚洲一区二区三区四区五区黄| 亚洲午夜精品久久久久久app| 亚洲一区二区三区欧美| 午夜精品一区二区三区在线视| 欧美一级二区| 久久精品伊人| 欧美a级一区| 欧美体内she精视频在线观看| 欧美视频专区一二在线观看| 国产伦精品一区二区三| 国内偷自视频区视频综合| 亚洲二区三区四区| 一区二区久久| 久久精品免费| 亚洲第一区在线观看| 日韩一区二区精品| 欧美影视一区| 欧美福利视频在线观看| 国产精品久久久久久久浪潮网站| 国产欧美一区二区精品性色| 伊人成人在线视频| 99riav久久精品riav| 午夜一区二区三区在线观看| 久久综合精品国产一区二区三区| 亚洲大片精品永久免费| 亚洲图片欧洲图片av| 久久久久99| 欧美日韩亚洲不卡| 激情欧美国产欧美| 亚洲一区国产精品| 欧美激情成人在线视频| 亚洲淫性视频| 欧美激情综合五月色丁香小说| 国产乱码精品一区二区三区忘忧草 | 亚洲性图久久| 巨乳诱惑日韩免费av| 99精品免费| 欧美mv日韩mv国产网站app| 国产精品久线观看视频| 亚洲欧洲一区| 久久天天躁狠狠躁夜夜av| 一区二区三区av| 免费在线成人| 国内偷自视频区视频综合| 亚洲伊人色欲综合网| 亚洲国产精品久久久久婷婷884 | 欧美一区二区黄色| 欧美日韩一区二区在线播放| 在线看日韩av| 久久久精品一区|