关注
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.util.Scanner;
/**
* @author Q
* @version 1.0
* Create by 2023/8/19 19:31
*/
class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n =sc.nextInt();
long[] arr = new long[n];
long sum = 0;
for(int i =0;i<n;i++){
arr[i] = sc.nextLong();
sum+=arr[i];
}
LinkedList<Integer> path = new LinkedList<>();
List<List<Integer>> ans = new ArrayList<>();
build(n, sum, 1, 0,path,ans,arr);
System.out.println(ans.size()%1000000007);
}
private static void build(int k, long n, int startIndex, long sum,LinkedList<Integer> path,List<List<Integer>> ans,long[] arr) {
if (sum > n) return;
if (path.size() > k) return;
if (sum == n && path.size() == k) {
ans.add(new ArrayList<>(path));
return;
}
for(int i = 1; i <= 9; i++) {
if(i==arr[path.size()]) continue;
path.add(i);
sum += i;
build(k, n, i , sum,path,ans,arr);
sum -= i;
path.removeLast();
}
}
}
第四题用的回溯
查看原帖
点赞 4
相关推荐
点赞 评论 收藏
分享
2025-12-18 09:22
门头沟学院 Java 点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 在大厂上班是一种什么样的体验 #
12901次浏览 173人参与
# 你的mentor是什么样的人? #
51278次浏览 724人参与
# 程序员找工作至少要刷多少题? #
21811次浏览 278人参与
# 我和mentor的爱恨情仇 #
106389次浏览 951人参与
# 论秋招对个人心气的改变 #
14032次浏览 193人参与
# 机械人避雷的岗位/公司 #
44352次浏览 311人参与
# 为了减少AI幻觉,你注入过哪些设定? #
6461次浏览 185人参与
# 秋招落幕,你是He or Be #
54378次浏览 618人参与
# 校招第一份工作你干了多久? #
136743次浏览 597人参与
# 高薪高压 vs 低薪wlb,你怎么选? #
47531次浏览 291人参与
# 设计人如何选offer #
189818次浏览 868人参与
# 考公VS就业,你怎么选? #
92050次浏览 507人参与
# 职场上哪些行为很加分? #
322757次浏览 3604人参与
# 你的秋招进行到哪一步了 #
2531925次浏览 23253人参与
# 牛客AI体验站 #
8213次浏览 213人参与
# 机械人还在等华为开奖吗? #
312294次浏览 1582人参与
# 秋招投递记录 #
381099次浏览 3204人参与
# 12306一秒售罄,你抢到回家的票了吗? #
2402次浏览 52人参与
# 我现在比当时_,你想录用我吗 #
9673次浏览 131人参与
# 重来一次,我还会选择这个专业吗 #
411482次浏览 3898人参与
