當(dāng)柳上原的風(fēng)吹向天際的時(shí)候...

          真正的快樂(lè)來(lái)源于創(chuàng)造

            BlogJava :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
            368 Posts :: 1 Stories :: 201 Comments :: 0 Trackbacks
          公安人員抓捕了四個(gè)盜竊嫌疑犯,下面是他們的審訊記錄:
          A:是B偷的,不是D偷的
          B:我沒(méi)有偷,是C偷的
          C說(shuō):A沒(méi)有偷,是B偷的
          D:我沒(méi)有偷
          現(xiàn)已經(jīng)確切知道只有一人參與偷竊,且四人的話(huà)語(yǔ)要么全是真話(huà),要么全在撒謊。
          請(qǐng)根據(jù)這些條件編程判斷誰(shuí)是小偷?

          package com.heyang;

          public class WhoIsTheThief{
            
          public static void main(String[] args){
              
          int[] arr=new int[4]; 
              
              
          for(arr[0]=0;arr[0]<=1;arr[0]++){
                
          for(arr[1]=0;arr[1]<=1;arr[1]++){
                  
          for(arr[2]=0;arr[2]<=1;arr[2]++){
                    
          for(arr[3]=0;arr[3]<=1;arr[3]++){           
                      
          // 只有一個(gè)人是小偷
                      if(hasOnlyOneThief(arr)==false){
                        
          continue;
                      }

                      
                      
          boolean wordByA=(arr[1]==1 && arr[3]==0);
                      
          boolean wordByB=(arr[1]==0 && arr[2]==1);
                      
          boolean wordByC=(arr[0]==0 && arr[1]==1);
                      
          boolean wordByD=(arr[3]==0);
                      
                      
          boolean resultFinal=allTrueOrAllFalse(wordByA,wordByB,wordByC,wordByD);
                      
                      
          if(resultFinal==false){
                        printThief(arr);              
                        
          return;
                      }

                    }

                  }

                }

              }

            }

            
            
          private static boolean hasOnlyOneThief(int[] arr){
              
          int thiefCount=0;
              
              
          for(int i:arr){
                thiefCount
          +=i;
              }

              
              
          return thiefCount==1;
            }

            
            
          private static boolean allTrueOrAllFalse(boolean wordByA,boolean wordByB,boolean wordByC,boolean wordByD){
              
          if(wordByA==true && wordByB==true && wordByC==true && wordByD==true){
                
          return true;
              }

              
          else if(wordByA==false && wordByB==false && wordByC==false && wordByD==false){
                
          return true;
              }

              
          else{
                
          return false;
              }

            }

            
            
          private static void printThief(int[] arr){
              
          char[] arrNames={'A','B','C','D'};  
              
              
          for(int i=0;i<arr.length;i++){
                
          if(arr[i]==i){
                  System.out.println(arrNames[i]
          +"是竊賊");
                }

                
          else{
                  System.out.println(arrNames[i]
          +"不是竊賊");
                }

              }
           
            }

          }
          posted on 2009-01-15 08:35 何楊 閱讀(171) 評(píng)論(0)  編輯  收藏

          只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 双桥区| 杨浦区| 望江县| 屯留县| 砀山县| 日喀则市| 安顺市| 班玛县| 仙游县| 揭西县| 台东县| 崇仁县| 泽州县| 阿巴嘎旗| 姜堰市| 铁岭市| 枞阳县| 吉林省| 蛟河市| 漳浦县| 汽车| 彝良县| 英德市| 天长市| 固原市| 龙州县| 岗巴县| 富源县| 仙桃市| 万年县| 兴义市| 浦城县| 井研县| 花莲市| 龙海市| 金乡县| 盐山县| 罗山县| 雷山县| 凤冈县| 年辖:市辖区|