package com.neitui.demo2;
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt(); //棋子个数
int[] x = new int[n]; //横坐标数组`
int[] y = new int[n]; //纵坐标数组
//赋值
for(int i = 0;i<n;i++){
x[i]=sc.nextInt();
}
for(int i = 0;i<n;i++){
y[i]=sc.nextInt();
}
for(int i = 0;i<n;i++){
System.out.print(syso(i, x, y)+" ");
}
}
public static int[] getResult(int i,int[] arrx,int[] arry){
int[] result = new int[arrx.length]; //返回结果,为其他点到这个点的距离,数组
for(int j=0;j<arrx.length;j++){
if(j!=i) {
result[j] = Math.abs(arrx[i]-arrx[j])+Math.abs(arry[i]-arry[j]);
}else{
result[j] = 0;
}
}
Arrays.sort(result);
return result;
}
public static int getSum(int i,int[] vaule){
int result =0 ;
for(int j = 0;j<=i;j++){
result+=vaule[j];
}
return result;
}
public static int syso(int i,int[] arrx,int[] arry){
int count = 0;
int k =0;
int[] js = new int[arrx.length];
for(int j=0;j<arrx.length;j++){
js[j] = getSum(i, getResult(k, arrx,arry));
k=k+1;
}
Arrays.sort(js);
count = js[0];
return count;
}
}
网易2018校招在线编程题-第二题
最新推荐文章于 2020-03-26 00:13:09 发布