博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
蓝桥杯 第三届C/C++预赛真题(4) 奇怪的比赛(递归)
阅读量:5272 次
发布时间:2019-06-14

本文共 756 字,大约阅读时间需要 2 分钟。

某电视台举办了低碳生活大奖赛。题目的计分规则相当奇怪:

每位选手需要回答10个问题(其编号为1到10),越后面越有难度。答对的,当前分数翻倍;答错了则扣掉与题号相同的分数(选手必须回答问题,不回答按错误处理)。

每位选手都有一个起步的分数为10分。

某获胜选手最终得分刚好是100分,如果不让你看比赛过程,你能推断出他(她)哪个题目答对了,哪个题目答错了吗?

如果把答对的记为1,答错的记为0,则10个题目的回答情况可以用仅含有1和0的串来表示。例如:0010110011 就是可能的情况。

你的任务是算出所有可能情况。每个答案占一行。

答案写在“解答.txt”中,不要写在这里!

 


 

  递归

  写一个递归,每一层递归代表一道题的对错情况,用一个数组存储之前所有题的对错情况。直到n==10时,计算当前成绩在当前题目对错情况下的得分是否为100。如果是100输出这种情况。

  答案

001011001101110100001011010000

   代码 

1 #include 
2 using namespace std; 3 int a[11]; 4 void f(int n,int r,int s) //题号和答题结果(答对或答错)和当前的成绩 5 { 6 if(r){ //如果这道题答对 7 if(n==10 && s*2==100){ 8 a[n]=r; 9 for(int i=1;i<=10;i++)10 cout<

 

Freecode :

转载于:https://www.cnblogs.com/yym2013/p/3603062.html

你可能感兴趣的文章
octave基本操作
查看>>
axure学习点
查看>>
WPF文本框只允许输入数字[转]
查看>>
dom4j 通用解析器,解析成List<Map<String,Object>>
查看>>
第一个项目--用bootstrap实现美工设计的首页
查看>>
使用XML传递数据
查看>>
TYVJ.1864.[Poetize I]守卫者的挑战(概率DP)
查看>>
0925 韩顺平java视频
查看>>
iOS-程序启动原理和UIApplication
查看>>
mysql 8.0 zip包安装
查看>>
awk 统计
查看>>
CSS min-height 属性
查看>>
模板设计模式的应用
查看>>
实训第五天
查看>>
平台维护流程
查看>>
2012暑期川西旅游之总结
查看>>
Linux发行版的排行
查看>>
12010 解密QQ号(队列)
查看>>
2014年辛星完全解读Javascript第一节
查看>>
装配SpringBean(一)--依赖注入
查看>>