关注
我朋友的写法,AC了,留在ide里,就是排列组合吧。 public class lovely { static double[][] arr=new double[6][2]; static double [] []dis=new double[6][6]; public static void main(String[] args) { double distance=0; Scanner sc = new Scanner(System.in); for(int i=1;i<=5;i++) { for(int j=0;j<2;j++)arr[i][j]=sc.nextInt(); } for(int i=0;i<6;i++) { for(int j=0;j<6;j++) { dis[i][j]=Math.sqrt(Math.abs(arr[i][0]-arr[j][0])*Math.abs(arr[i][0]-arr[j][0])+Math.abs(arr[i][1]-arr[j][1])*Math.abs(arr[i][1]-arr[j][1])); } } ArrayList<Integer> save=new <Integer>ArrayList(); save.add(1); save.add(2); save.add(3); save.add(4); save.add(5); distance=showin(0,save); System.out.println((int)distance); } public static double showin(Integer b,ArrayList<Integer> save) { Iterator<Integer> it = save.iterator(); double max=80000000; if(!it.hasNext())return 0; if(save.size()==1) { Integer i=it.next(); return dis[0][i]+dis[b][i]; } while (it.hasNext()) { Integer a=it.next(); ArrayList<Integer> newsave=new <Integer>ArrayList(); newsave.addAll(save); newsave.remove(a); Double c=showin(a, newsave); if(max>dis[b][a]+c)max=dis[b][a]+c; } return max; } }
查看原帖
点赞 评论
相关推荐
牛客热帖
更多
正在热议
更多
# xx岗简历求拷打 #
9098次浏览 105人参与
# 求职季如何保持心态不崩 #
212522次浏览 1459人参与
# 开工第一帖 #
30449次浏览 643人参与
# 面试反问你会问什么 #
168682次浏览 1738人参与
# 有转正机会的小厂实习值得去吗? #
8978次浏览 100人参与
# 你听到的“最没用”的秋招建议 #
51389次浏览 324人参与
# 工作不开心辞职是唯一出路吗 #
9651次浏览 40人参与
# 产品面经 #
263496次浏览 2177人参与
# 掌握什么AI技能,会为你的求职大大加分 #
7779次浏览 350人参与
# 你收到了团子的OC了吗 #
1532551次浏览 11825人参与
# 携程求职进展汇总 #
889382次浏览 5882人参与
# 远程面试的尴尬瞬间 #
328486次浏览 1917人参与
# 制造业的秋招小结 #
144855次浏览 2093人参与
# 拼多多求职进展汇总 #
848455次浏览 6593人参与
# 实习要如何选择和准备? #
145222次浏览 1566人参与
# 面试题刺客退退退 #
535410次浏览 7533人参与
# 非技术岗是怎么找实习的 #
295522次浏览 2594人参与
# 找工作时的取与舍 #
122957次浏览 878人参与
# 现在还是0offer,延毕还是备考 #
1299156次浏览 7929人参与
# 你最讨厌面试被问什么 #
8953次浏览 108人参与
字节跳动工作强度 1104人发布
查看23道真题和解析