import java.util.*; import java.lang.*; public class Main { public static Integer[] chess_min(Integer[] X, Integer[] Y, Integer n) { Set<Integer> xAxis = new HashSet<Integer>(Arrays.asList(X)); Set<Integer> yAxis = new HashSet<Integer>(Arrays.asList(Y)); List<List<Integer>> centers = new ArrayList<List<Integer>>(); for (Integer x: xAxis) { for (Integer y: yAxis) { List<Integer> distances = new ArrayList<Integer>(); for (Integer i=0; i<n; i++) { distances.add(Math.abs(X[i]-x) + Math.abs(Y[i]-y)); } Collections.sort(distances); centers.add(distances); } } Integer[] min_step = new Integer[n]; Integer[] sum = new Integer[centers.size()]; for (Integer i=0; i<centers.size(); i++) { sum[i] = 0; } for (Integer i=0; i<n; i++) { for (Integer j=0; j<centers.size(); j++) { sum[j] += centers.get(j).get(i); } min_step[i] = Collections.min(Arrays.asList(sum)); } return min_step; } public static void main(String[] args) { Scanner in = new Scanner(System.in ); while(in.hasNext()) { Integer n = in.nextInt(); Integer[] X = new Integer[n]; Integer[] Y = new Integer[n]; for (Integer i=0; i<n; i++) { X[i] = in.nextInt(); } for (Integer i=0; i<n; i++) { Y[i] = in.nextInt(); } StringBuilder str = new StringBuilder(); for (Integer i: chess_min(X, Y, n)) { str.append(i+" "); } System.out.println(str.substring(0,str.length()-1)); } } } 棋子 java过的
点赞 2

相关推荐

牛客网
牛客企业服务