ï»??xml version="1.0" encoding="utf-8" standalone="yes"?>992tv在线观看,毛片网站在线看,日韩二区三区http://www.aygfsteel.com/zhaochengming/archive/2007/08/13/136486.htmlhelloworld2008helloworld2008Mon, 13 Aug 2007 11:01:00 GMThttp://www.aygfsteel.com/zhaochengming/archive/2007/08/13/136486.htmlhttp://www.aygfsteel.com/zhaochengming/comments/136486.htmlhttp://www.aygfsteel.com/zhaochengming/archive/2007/08/13/136486.html#Feedback0http://www.aygfsteel.com/zhaochengming/comments/commentRss/136486.htmlhttp://www.aygfsteel.com/zhaochengming/services/trackbacks/136486.html问题åQšæœ‰ 12 颗玻璃球大小一æ ? 不知道哪一颗重äº? ˜q˜æ˜¯è½ÖMº†(ji¨£n). è¯ïL(f¨¥ng)”¨å¤©åã^¿U¤ç§¤3‹Æ? 把其中的一颗重量不均匀的玻璃球取出æ?


class Ball {
     private int weight;
   
     public void setWeight(int weight) {
         this.weight = weight;
     }
   
     public int getWeight() {
         return this.weight;
     }
}

class ComputerDifBall {
     /**
      * 天åã^¿U°æ–¹æ³?br>      * @param balls1
      * @param balls2
      * @return int 0:òq?1:balls1é‡?2:balls2é‡?br>      */
     public int balance(Ball[] balls1, Ball[] balls2) {
         for (int i = 0; i < balls1.length; i++) {
             int weight1 = balls1
.getWeight();
             int weight2 = balls2
.getWeight();
             if (weight1 > weight2) {
                 return 1;
             } else if (weight1 < weight2) {
                 return 2;
             }
         }
         return 0;
     }
   
     /**
      * 天åã^¿U°æ–¹æ³?br>      * @param balls1
      * @param balls2
      * @return int 0:òq?1:balls1é‡?2:balls2é‡?br>      */    
     public int balance (Ball ball1, Ball ball2) {
         if (ball1.getWeight() == ball2.getWeight()) {
             return 0;
         } else if (ball1.getWeight() > ball2.getWeight()) {
             return 1;
         } else {
             return 2;
         }
     }
   
     /**
      * ½Ž—å‡ºå“ªä¸€ä¸ªä¸ä¸€æ øP¼Œæ˜¯é‡äº?ji¨£n)还是轻ä?br>      * @param balls
      * @return
      */
     public void balanceMethod(Ball[] balls) {
         Ball[] A = {balls[0],balls[1],balls[2],balls[3]};
         Ball[] B = {balls[4],balls[5],balls[6],balls[7]};
         Ball[] C = {balls[8],balls[9],balls[10],balls[11]};
         //1.¿U°ç¬¬ä¸€‹Æ?br>         int first = balance(A,B);
         if (first == 0) {
             //A==B,C¾l„中有问é¢?br>             Ball[]D = new Ball[3];
             Ball[]E = new Ball[3];
             for (int i = 0 ; i < 3; i++) {
                 D
= A;
                 E
= C;
             }
             //2.¿U°ç¬¬äºŒæ¬¡
             int second = balance(D,E);
             if (second == 0) {
                 //D,E相等,C中第4个有问题
                 //3.¿U°ç¬¬ä¸‰æ¬¡
                 int third = balance(A[0],C[3]);
                 System.out.println("½W?2个球有问é¢?"+(third==2?"˜q™ä¸ªçƒé‡äº?":"˜q™ä¸ªçƒè½»äº?"));
             } else {
                 //3.¿U°ç¬¬ä¸‰æ¬¡
                 int third = balance(C[0],C[1]);
                 if (third == 0) {
                     System.out.println("½W?1个球有问é¢?"+(third==2?"˜q™ä¸ªçƒé‡äº?":"˜q™ä¸ªçƒè½»äº?"));
                 } else {
                     if (second == 1) {
                         if (third == 1) {
                             System.out.println("½W?0个球有问é¢?˜q™ä¸ªçƒè½»äº?");
                         } else {
                             System.out.println("½W?个球有问é¢?˜q™ä¸ªçƒè½»äº?");
                         }
                     } else {
                         if (third == 1) {
                             System.out.println("½W?个球有问é¢?˜q™ä¸ªçƒé‡äº?");
                         } else {
                             System.out.println("½W?0个球有问é¢?˜q™ä¸ªçƒé‡äº?");
                         }                        
                     }
                 }
             }
         } else {
             Ball[] D = {A[0],A[1],B[0],C[0]};
             Ball[] E = {A[2],A[3],B[1],C[1]};
             //2.¿U°ç¬¬äºŒæ¬¡
             int second = balance(D,E);
             if (second == 0) {
                 //Aå’ŒB不等åQŒä¸”A[0]+A[1]+B[0]+C[0] == A[2]+A[3]+B[1]+C[1]
                 //则肯定是B[2]/B[3]中有个球不一æ ?br>                 //3.¿U°ç¬¬ä¸‰æ¬¡
                 int third = balance(B[2],B[3]);
                 if (first == 1) {
                     if (third > 1 ) {
                         System.out.println("½W?个球有问é¢?˜q™ä¸ªçƒè½»äº?");
                     } else {
                         System.out.println("½W?个球有问é¢?˜q™ä¸ªçƒè½»äº?");
                     }                
                 } else {
                     if (third > 1 ) {
                         System.out.println("½W?个球有问é¢?˜q™ä¸ªçƒé‡äº?");
                     } else {
                         System.out.println("½W?个球有问é¢?˜q™ä¸ªçƒé‡äº?");
                     }    
                 }
             } else {
                 Ball[] F = {A[0],A[3]};
                 Ball[] G = {A[1],A[2]};
                 //3.¿U°ç¬¬ä¸‰æ¬¡
                 int third = balance(F,G);
                 if (third == 0) {
                     //A中的球都是一æ ?B中有不相同的ç?br>                     //B中B[0],B[1]不一æ ?br>                     if (first == 1) {
                         if (second == 1) {
                             System.out.println("½W?个球有问é¢?˜q™ä¸ªçƒè½»äº?");
                         } else {
                             System.out.println("½W?个球有问é¢?˜q™ä¸ªçƒè½»äº?");
                         }
                     } else {
                         if (second == 1) {
                             System.out.println("½W?个球有问é¢?˜q™ä¸ªçƒé‡äº?");
                         } else {
                             System.out.println("½W?个球有问é¢?˜q™ä¸ªçƒé‡äº?");
                         }                        
                     }
                 } else {
                     if (third == 1) {
                         //则A[0],A[1]中有一个重的球
                         if (first == 1) {
                             if (second == 1) {
                                 System.out.println("½W?个球有问é¢?˜q™ä¸ªçƒé‡äº?");
                             } else {
                                 System.out.println("½W?个球有问é¢?˜q™ä¸ªçƒé‡äº?");
                             }
                         } else {
                             if (second == 1) {
                                 System.out.println("½W?个球有问é¢?˜q™ä¸ªçƒè½»äº?");
                             } else {
                                 System.out.println("½W?个球有问é¢?˜q™ä¸ªçƒè½»äº?");
                             }                            
                         }
                     } else {
                         if (first == 1) {
                             if (second == 1) {
                                 System.out.println("½W?个球有问é¢?˜q™ä¸ªçƒé‡äº?");
                             } else {
                                 System.out.println("½W?个球有问é¢?˜q™ä¸ªçƒé‡äº?");
                             }
                         } else {
                             if (second == 1) {
                                 System.out.println("½W?个球有问é¢?˜q™ä¸ªçƒè½»äº?");
                             } else {
                                 System.out.println("½W?个球有问é¢?˜q™ä¸ªçƒè½»äº?");
                             }                            
                         }
                     }
                 }
             }
         }
     }
   
   
     public static void main(String[] args) {
         ComputerDifBall cdb = new ComputerDifBall();
         for (int i = 0; i < 12; i++) {
             Ball[] ball = new Ball[12];
             for (int j = 0; j < 12; j++) {
                 ball[j] = new Ball();
                 if (i != j)
                     ball[j].setWeight(0);
                 else
                     ball[j].setWeight(10);
             }
             System.out.println("-------------½W?+i+"‹Æ¡æµ‹è¯?æ³¨æ„é‡çš„çƒäØ“(f¨´)½W?+(i+1)+"ä¸?-----------------");
             cdb.balanceMethod(ball);
             System.out.println();
         }
       
         for (int i = 0; i < 12; i++) {
             Ball[] ball = new Ball[12];
             for (int j = 0; j < 12; j++) {
                 ball[j] = new Ball();
                 if (i != j)
                     ball[j].setWeight(10);
                 else
                     ball[j].setWeight(0);
             }
             System.out.println("-------------½W?+i+"‹Æ¡æµ‹è¯?注意è½Èš„çƒäØ“(f¨´)½W?+(i+1)+"ä¸?-----------------");
             cdb.balanceMethod(ball);
             System.out.println();
         }
     }
}


上面是用java写的
åˆ?¾l„是可以¿U°å‡ºæ¥çš„
如果åˆ?¾l„,有一¿Uæƒ…冉|˜¯¿UîC¸å‡ºæ¥
A,B,C,D(每组3�
A=B
B=C
那么只有D中有一个不同的
åQŒè¿™ä¸ªæ—¶å€™ä¸èƒ½ç¡®å®šé‚£ä¸ªçƒæ˜¯é‡äº?ji¨£n)还是轻ä?/font>



helloworld2008 2007-08-13 19:01 发表评论
]]>
½W”试½Ž—法é¢?/title><link>http://www.aygfsteel.com/zhaochengming/archive/2007/08/13/136487.html</link><dc:creator>helloworld2008</dc:creator><author>helloworld2008</author><pubDate>Mon, 13 Aug 2007 11:01:00 GMT</pubDate><guid>http://www.aygfsteel.com/zhaochengming/archive/2007/08/13/136487.html</guid><wfw:comment>http://www.aygfsteel.com/zhaochengming/comments/136487.html</wfw:comment><comments>http://www.aygfsteel.com/zhaochengming/archive/2007/08/13/136487.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/zhaochengming/comments/commentRss/136487.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/zhaochengming/services/trackbacks/136487.html</trackback:ping><description><![CDATA[<p>一著名软äšg公司的java½W”试½Ž—法题!       <br>   ½Ž—法½E‹åºé¢˜ï¼š(x¨¬)       <br>           该公司笔试题ž®?个,要求åœ?0分钟内作完ã€?nbsp;      <br>           题目如下åQšç”¨1ã€?ã€?ã€?ã€?ã€?˜q™å…­ä¸ªæ•°å­—,用java写一个main函数åQŒæ‰“印出所有不同的排列åQŒå¦‚åQ?12234ã€?12345½{‰ï¼Œè¦æ±‚åQ?4"不能在第三位åQ?3"ä¸?5"不能相连ã€?</p> <p><strong>循环æ–ÒŽ(gu¨©)³•</strong><br>class Test2 {<br>public static void main(String args[]) {<br>   char[] c = { '1', '2', '2', '3', '4', '5' };<br>   for (int i = 0; i < c.length; i++) {<br>    for (int j = 0; j < c.length; j++) {<br>     if (i == j || (c[i] == '3' && c[j] == '5'))<br>      continue;<br>     for (int k = 0; k < c.length; k++) {<br>      if (k == i || k == j || (c[j] == '3' && c[k] == '5')<br>        || c[k] == '4') {<br>       continue;<br>      }<br>      for (int m = 0; m < c.length; m++) {<br>       if (m == k || m == i || m == j<br>         || (c[k] == '3' && c[m] == 5)) {<br>        continue;<br>       }<br>       for (int n = 0; n < c.length; n++) {<br>        if (n == m || n == k || n == i || n == j<br>          || (c[m] == '3' && c[n] == '5')) {<br>         continue;<br>        }<br>        for (int l = 0; l < c.length; l++) {<br>         if (l == n || l == m || l == k || l == j<br>           || l == i<br>           || (c[n] == '3' && c[l] == '5')) {<br>          continue;<br>         }<br>         System.out.println(c[i] + "" + c[j] + "" + c[k]<br>           + "" + c[m] + "" + c[n] + "" + c[l]);<br>        }<br>       }<br>      }<br>     }<br>    }<br>   }<br>}<br>}</p> <p> </p> <p><strong>递归æ–ÒŽ(gu¨©)³•</strong><br>class Test2 {</p> <p>public int[] getNextDifPos(int[] before, int add) {<br>   int[] res = new int[before.length + 1];<br>   for (int i = 0; i < before.length; i++) {<br>    res[i] = before[i];<br>   }<br>   res[res.length - 1] = add;<br>   return res;<br>}</p> <p>public int getNextPos(int[] pos) {<br>   for (int i = 0; i < pos.length; i++) {<br>    if (pos[i] != -1) {<br>     return i;<br>    }<br>   }<br>   return -1;<br>}</p> <p>public void getStr(int[] before, char[] chars) {<br>   if (before.length == chars.length) {<br>    StringBuffer str = new StringBuffer();<br>    for (int i = 0; i < before.length; i++) {<br>     str.append(chars[before[i]]);<br>    }<br>    // 加判断条ä»?br>    if (str.charAt(2) == '4' || str.indexOf("35") >= 0) {<br>     return;<br>    }<br>    System.out.println(str.toString());<br>   } else if (before.length < chars.length) {<br>    int[] pos = new int[chars.length];<br>    for (int i = 0; i < before.length; i++) {<br>     pos[before[i]] = -1;<br>    }<br>    int nextPos;<br>    while ((nextPos = getNextPos(pos)) != -1) {<br>     pos[nextPos] = -1;<br>     getStr(getNextDifPos(before, nextPos), chars);<br>    }<br>   }<br>}</p> <p>public static void main(String args[]) {<br>   char[] c = { '1', '2', '2', '3', '4', '5' };<br>   int[] l = {};<br>   Test2 t = new Test2();<br>   t.getStr(l, c);<br>}<br>}</p> <img src ="http://www.aygfsteel.com/zhaochengming/aggbug/136487.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/zhaochengming/" target="_blank">helloworld2008</a> 2007-08-13 19:01 <a href="http://www.aygfsteel.com/zhaochengming/archive/2007/08/13/136487.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a> </div> </footer> Ö÷Õ¾Ö©Öë³ØÄ£°å£º <a href="http://" target="_blank">µÂ°²ÏØ</a>| <a href="http://" target="_blank">ÓÀÐËÏØ</a>| <a href="http://" target="_blank">ÀÖÒµÏØ</a>| <a href="http://" target="_blank">É£ÈÕÏØ</a>| <a href="http://" target="_blank">Â³É½ÏØ</a>| <a href="http://" target="_blank">¹ãË®ÊÐ</a>| <a href="http://" target="_blank">¸Ê×Î</a>| <a href="http://" target="_blank">°¢ÈÙÆì</a>| <a href="http://" target="_blank">°¢°Í¸ÂÆì</a>| <a href="http://" target="_blank">ºâÄÏÏØ</a>| <a href="http://" target="_blank">»áÔóÏØ</a>| <a href="http://" target="_blank">´ó¹ØÏØ</a>| <a href="http://" target="_blank">ÒËÁ¼ÏØ</a>| <a href="http://" target="_blank">Çú¸·ÊÐ</a>| <a href="http://" target="_blank">¼ªÄ¾Èø¶ûÏØ</a>| <a href="http://" target="_blank">ËÉÔ­ÊÐ</a>| <a href="http://" target="_blank">½¡¿µ</a>| <a href="http://" target="_blank">Ïã¸Û </a>| <a href="http://" target="_blank">Ѱµé</a>| <a href="http://" target="_blank">ÄÏ·áÏØ</a>| <a href="http://" target="_blank">·ï»ËÏØ</a>| <a href="http://" target="_blank">ÁÉÑôÊÐ</a>| <a href="http://" target="_blank">½­¶¼ÊÐ</a>| <a href="http://" target="_blank">¹óÄÏÏØ</a>| <a href="http://" target="_blank">ººÊÙÏØ</a>| <a href="http://" target="_blank">Ë·ÖÝÊÐ</a>| <a href="http://" target="_blank">ÄÚ½­ÊÐ</a>| <a href="http://" target="_blank">¿Ëʲ¿ËÌÚÆì</a>| <a href="http://" target="_blank">¹§³Ç</a>| <a href="http://" target="_blank">н¨ÏØ</a>| <a href="http://" target="_blank">Õê·áÏØ</a>| <a href="http://" target="_blank">ÇàÆÖÇø</a>| <a href="http://" target="_blank">Ïî³ÇÊÐ</a>| <a href="http://" target="_blank">¾ÃÖÎÏØ</a>| <a href="http://" target="_blank">ÔóÖÝÏØ</a>| <a href="http://" target="_blank">À³ÎßÊÐ</a>| <a href="http://" target="_blank">Î÷»ªÏØ</a>| <a href="http://" target="_blank">ÄÏÕÙÏØ</a>| <a href="http://" target="_blank">ÕòÆ½ÏØ</a>| <a href="http://" target="_blank">ËæÖÝÊÐ</a>| <a href="http://" target="_blank">Û°³ÇÏØ</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>