第4题: Scanner in = new Scanner(System.in); String[] aStr = in.nextLine().split(" "); int total = Integer.parseInt(in.nextLine()); int[] a = new int[aStr.length]; for (int i = 0; i < a.length; i++) { a[i] = Integer.parseInt(aStr[i]); } Arrays.sort(a); int min = a[0]; if (min > total){ System.out.println(1); return; } int[] dp = new int[total + 1]; dp[0] = 1; for (int i = a.length - 1; i >= 0; i--) { for (int j = a[i]; j < total + 1; j++) { dp[j] += dp[j - a[i]]; } } for (int i = 1; i < min; i++) { dp[total] += dp[total - i]; } System.out.println(dp[total]);
点赞 评论

相关推荐

11-04 19:05
已编辑
东莞城市学院 单片机
不知道怎么取名字_:你这个要实习两年?哪有这么久的,感觉就是即使你毕业了,但还按实习的话,是不是不用给你缴社保公积金啥的
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
11-21 11:29
已编辑
斯卡蒂味的鱼汤:知道你不会来数马,就不捞你😂最近数马疯狂扩招,招聘要求挺低的,你能力肯定够,应该就是因为太强了,知道你不会来才不捞你
投递腾讯云智研发等公司7个岗位
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务