Spirit

          Google Code Jam - SkipStones的一種遞歸算法

          public class SkipStones {
              
          private String water = "X";

              
          public int maxDistance(String water) {
                  
          this.water = water;
                  
          int max = 0;
                  
          int sum = 0;
                  
          for (int initial = 1; initial < water.length() + 1; initial++) {
                      sum 
          = bounce(0, initial);
                      max 
          = (sum > max ? sum : max);
                  }
                  
          return max;
              }

              
          private int bounce(int startDistance, int bounceDistance) {
                  
          if (bounceDistance == 0)
                      
          return startDistance;

                  
          if ((startDistance + bounceDistance) > water.length())
                      
          return -1;

                  
          if (water.charAt(startDistance + bounceDistance - 1== 'X')
                      
          return startDistance;

                  
          return bounce(startDistance + bounceDistance, bounceDistance / 2);
              }

              
          public static void main(String[] args) {
                  SkipStones skipStones 
          = new SkipStones();
                  System.out.println(skipStones.maxDistance(args[
          0]));
              }
          }

          posted on 2005-12-15 13:29 Spirit 閱讀(362) 評論(1)  編輯  收藏

          評論

          # re: Google Code Jam - SkipStones的一種遞歸算法 2009-05-10 05:41 exceptionxu

          驗(yàn)證好像不通過。試用以下的
          XXXXXXX.XXX.X......X........XXXXX......XXXXX...
          得到的結(jié)果是39,但39應(yīng)該是錯誤的,怎么算都會碰到X  回復(fù)  更多評論   


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 丹江口市| 武穴市| 五寨县| 嵊州市| 卓资县| 镇坪县| 平山县| 进贤县| 新昌县| 淄博市| 上栗县| 浠水县| 柘荣县| 陈巴尔虎旗| 西和县| 囊谦县| 电白县| 石城县| 新邵县| 朝阳市| 永平县| 泉州市| 保亭| 湖口县| 东乡族自治县| 临桂县| 读书| 龙游县| 毕节市| 棋牌| 鄂伦春自治旗| 石家庄市| 洪江市| 金平| 德惠市| 额济纳旗| 博爱县| 东明县| 洞头县| 黄骅市| 铜山县|