一道考察递归思想的面试题

原创 2005年02月26日 17:48:00

打靶成绩的可能性
一个人打靶,成绩为0~10之间的任意一个整数。包括0和10。
一共打了10次总共得分89分。问得分的可能性。


分析如下将问题看成一个规划问题。
转化成如下问题。有10个位置,每个位置上可以赋值0~10之间的整数,使得所有位置上的值的总和为11分。问排列的可能性。
将问题进一步简化:
有3个位置,使得总和为4分的赋值方案有几种?
手算为15种作为校验标准。

#include "stdafx.h"
#define number 10
#define score  11
int arrange_value[10];
int count=0;
void  cal(int position, int value)
{
 if(position==number)
 {
  if(value==score)
   count++;
  return;
 }
 
 for(int i=0;i<10;i++)
 {
  arrange_value[position] = i;
  cal(position+1, value+i);
 }
  
 
}
int main(int argc, char* argv[])
{
 cal(0,0);
 printf("there are %d solutions/n",count);
 return 0;
}


搞定。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

一道递归思想的排列组合题目

题目原题:任意数字序列“12345678”之类,输出它们所有的排列组合这道题目对于学习递归还是挺不错的,可以借鉴一下 要注意的是: list.remove() 删掉链表的第一项,并返回这个对象(...
  • gsycwh
  • gsycwh
  • 2016-08-23 10:39
  • 2643

面试题12:打印1到最大的n位数-大数问题-递归实现多层循环

#include #include #include #include #include #include #include using namespace std; void p...

创新工厂面试题详解:共打了多少鱼 -- 正解 递归求解法

今天看了一篇博文创新工场面试题详解题目:abcde五人打渔,打完睡觉,a先醒来,扔掉1条鱼,把剩下的均分成5分,拿一份走了;b再醒来,也扔掉1条,把剩下的均分成5份,拿一份走了;然后cde都按上面的方...

常见Java面试题 – 第四部分:迭代(iteration)和递归(recursion)

 Q.请写一段代码来计算给定文本内字符“A”的个数。分别用迭代和递归两种方式。 A.假设给定文本为”AAA rating”。迭代方式就很直观,如下: 1 2...

剑指offer_面试题24_二叉搜索树的后序遍历序列(递归)

题目:输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则返回true,否则返回false。假设输入的数组的任意两个数字都互不相同。 二叉搜索树规律: 1、若 左子树 不空,则...

面试题(十二)谈谈递归

递归程序简洁,但是不是很好理解,

面试题二: java 实现二叉树的中序优先遍历,不能用递归

2.使用 java 实现二叉树的中序优先遍历, 如下二叉树的遍历结果为:ABDECF,  不能使用递归。 这道题目在我开始做的时候,有点纳闷,题目要求是中序优先遍历,也就是中序遍...

《剑指Offer》面试题:字符串的组合(不用递归求解)

剑指offer上的拓展题目 输入一个字符串,输出该字符串的字符的所有组合 比如输入字符串:abc,输出a、b、c、ab、ac、bc、abc。 思路 由于需要输出字符串的所有组合情况,在这...

面试题 二叉树的前序遍历,中序遍历,后序遍历(递归实现)

前序遍历递归解法: (1)如果二叉树为空,空操作 (2)如果二叉树不为空,访问根节点,前序遍历左子树,前序遍历右子树 中序遍历递归解法 (1)如果二叉树为空,空操作。 (2)如果二叉树不为空...

剑指offer - 面试题28:字符串的排列(递归+去重)

题目:输入一个字符串,打印出该字符串中字符的所有排列。 例如:输入字符串abc,则打印出由字符a、b、c所能排列出来的所有字符串abc、acb、bac、bca、cab和cba。 但是,还应当考虑字...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)