十枪90环--递归

题目:打十枪,一共打中90环,可以打成0环。共有多少种打法?

public static void main(String[] args) {
    cumput(90, 9);
     System.out.println("总数:"+sum);
 } 

static int sum;
 static int store[] = new int[10];
 static void output()
 {
     for(int i = 9; i>=0; --i)
     {
        System.out.print(store[i] + " ");
     }
    System.out.println();
    ++sum;
 }

 
 static void cumput(int score, int num)
 {
    // 无法完成的事件
  if(score < 0 || score > (num+1)*10 ) //次数num为0~9
       return;
   
    if(num == 0)
    {
         store[num] = score;
         output();
         return;
    }
   
    for(int i = 0; i <= 10; ++i)
    {
         store[num] = i;
         cumput(score - i, num - 1);
    }
 }

posted on 2010-01-19 14:29 飞熊 阅读(369) 评论(0)  编辑  收藏 所属分类: 算法


只有注册用户登录后才能发表评论。


网站导航:
 
<2010年1月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
31123456

导航

统计

常用链接

留言簿(1)

随笔分类

随笔档案

文章分类

文章档案

收藏夹

搜索

最新评论

阅读排行榜

评论排行榜