一、题目描述
小聪入职新公司,参加线上的新员工必考试共25题,依次是10个判断题(每题2分)、10个单选题(每题4分)和5个多选题(每题8分),总分100分。
考题只能顺序作答,答对题目获得相应的分数,答错题目获得0分,考试系统不提示作答是否正确,答题过程中如果累积有3题答错,直接中考试并计算考试分数。
小聪考试结果是N分(0<=N<=100),请根据小聪的分数,算出所有可能的答题情况的个数。
二、输入描述
整数,表示小聪的考试得分N,N为偶数,0<=N<=100,N不会是不可能考出来的分数。
三、输出描述
整数表示所有可能的答题情况的个数。
四、测试用例
1、输入
94
2、输出
100
3、说明
有1道单选和一道判断题答错,其余题都对,所有可能的答题情况的个数为100。
五、解题思路
通过回溯获取可能性,如果得分等于考试结果,表示OK,可能性sum+1。
- 题目数组初始化;
- 通过回溯获取可能性;
- 如果得分等于考试结果,表示OK,可能性sum+1;
- 如果得分大于考试结果终止遍历、等于3的时候,得分不等于考试结果,不符合要
这篇博客详细介绍了如何使用回溯算法解决华为OD机试中的一道题目,该题目涉及计算不同答题组合下,新员工获得特定分数的可能性。文章包含题目描述、输入输出说明、解题思路、Java代码实现以及效果展示,帮助读者理解并掌握回溯法在实际问题中的应用。
订阅专栏 解锁全文
7万+

被折叠的 条评论
为什么被折叠?



