题目:打十枪,一共打中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);
}
}