递归:打靶10次,求累积和90环的种数/概率

来源:互联网 发布:怎么更新windows系统 编辑:程序博客网 时间:2024/05/29 04:36

Ref: 《程序员面试宝典》

//递归:打靶10次,求累积和90环的种数/概率#include<iostream>using namespace std;int sum;//count the cases where total score = 90int store[10];//score 10 score for each shotvoid Output()//print the result{/*for(int i = 9; i>=0; --i)cout<<store[i]<<" ";cout<<endl;*/++sum;}void Comput(int score, int num)//until score = 90{if( score<0 || score>(num+1)*10 )//次数num为0-9return;if( num == 0 )//last time, Output result{store[num] = score;Output();return;}for ( int i = 0; i<= 10; ++i ){store[num] = i;//previous score range [0, 10]Comput(score - i, num - 1);}}int main(){Comput(90, 9);cout<<"总数: "<<sum<<endl;return 0;}//Result: 92378


0 0
原创粉丝点击