全部评论
dfs就行了,核心代码如下,我也是交卷之后才做出来的。
dp做的 但是测试的时候读不到那一行的数据 我是一个人吗QAQ
输入处理都处理不好
输入都输不进...Java的Scanner要怎么读入,然后输出到底是个什么格式,只要输出sum值还是“sum=值”
我只觉得这道题很迷,没做出来,太菜了
写完还剩10s,忘记要对输出排序了
编程之美的原题 就是输入的处理太难受了,没有ide我连split都能拼错😥
😢dp是弱点 做不出来
想到了。。很简单的,只有判断是否相等。求和,再排序,取最大,凑和的一半,开回溯。类0-1背包😢😢😢😂😂
对哦,对和的一半dfs就可以了…脑袋蒙了看到那个编译器…
这编辑器真的脑壳疼,输入是。arr1=[1,2]这种,需要读一行再分。
酷狗的IDE真的是一言难尽...
不是,输入到底怎么搞的啊😂
应届笔试吗?怎么和前段时间那份一样
用dfs暴力做的,最后写完没时间测试直接交了 https://paste.ubuntu.com/p/8MjF4bkS7s/
import java.util.ArrayList; import java.util.Arrays; import java.util.List; public class KuGou { public static void main(String[] args) { int arr1[]={4,3,2,1}; new KuGou().split(arr1); } private List<integer> list; private boolean flag; private int target; private int arr[]; public boolean split(int arr1[]){ list=new ArrayList<integer>(arr1.length); flag=false; Arrays.sort(arr1); arr=arr1; int sum=sum(arr1); if (sum%2!=0) return false; target=sum/2; fun(0); if (flag==true){ List<integer> arr2=new ArrayList<integer>(arr1.length); List<integer> arr3=new ArrayList<integer>(arr1.length); for (int i=0;i<arr1.length> l){ int sum=0; for (Integer i:l){ sum+=i; } return sum; } }</arr1.length></integer></integer></integer></integer></integer></integer>
给的样例不止一种答案吧?有大佬能解释下吗 样例输入的结果如下: arr1 = [2,5,1,3,4,8,6,7] arr2:[1, 4, 6, 7],arr3:[2, 3, 5, 8],sum=18 arr2:[1, 3, 6, 8],arr3:[2, 4, 5, 7],sum=18 arr2:[3, 4, 5, 6],arr3:[1, 2, 7, 8],sum=18 arr2:[1, 4, 5, 8],arr3:[2, 3, 6, 7],sum=18(这个是给出的)
如果 sum % 2 != 0,就不行 然后化归为组建一个sum/2大小的背包的问题。 不过我简历被筛了...
用cpp做的,输入弄了半天输不进去,原来是个string的吗😥😥
相关推荐
牛客吹哨人:哨哥晚点统一更新到黑名单:不要重蹈覆辙!25届毁意向毁约裁员黑名单https://www.nowcoder.com/discuss/1317104
点赞 评论 收藏
分享
01-15 00:58
The University of New South Wales 数据分析师 点赞 评论 收藏
分享
2024-12-05 11:40
西安电子科技大学广州研究院 电路设计工程师 点赞 评论 收藏
分享