华为笔试求教

笔试求教:有三种类型的题目,题型A一题2分,10题共20分;题型B一题4分,10题共40分;题型C一题8分,5题共40分。做题必须按顺序,且做错三道自动结束考试。
问输入一个分数N(0<=N<=100),输出有多少种可能考出这个分数。
例: 输入94,输出100.
#华为笔试##笔试题目#
全部评论
    public static void backTracking(int targetSum, int k, int startIndex, int sum) {         // 减枝         if (sum > targetSum) {             return;         }         if (startIndex-path.size() >2) {             return;         }else if (sum == targetSum){             count++;             return;         }         for (int i = startIndex; i < nums.length; i++) {             path.add(i);             sum += nums[i];             backTracking(targetSum, k, i + 1, sum);             path.removeLast();             sum -= nums[i]; 把分数存成一个数组,10个2,10个4,5个8,从0开始,然后回溯
2 回复 分享
发布于 2022-04-20 21:33
用深度搜索,记录已经做了几题和错了几题,超过三题直接返回分数检查是否是target,没超过就一直搜索,直到分数到target或者超出,ans++
1 回复 分享
发布于 2022-04-20 21:30

相关推荐

ResourceUtilization:你是我见过最美的牛客女孩
点赞 评论 收藏
分享
评论
1
23
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务