关注
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
牛客热帖
正在热议
# 牛友的五一计划 #
8634次浏览 199人参与
# 如何看待offer收割机的行为 #
192106次浏览 2966人参与
# 牛客帮帮团来啦!有问必答 #
389592次浏览 7709人参与
# 如何一边实习一边秋招 #
199919次浏览 3977人参与
# 春招别灰心,我们一人来一句鼓励 #
20574次浏览 304人参与
# 无实习如何秋招上岸 #
171127次浏览 2704人参与
# 硬件人的春招flag #
14475次浏览 199人参与
# 非技术岗薪资爆料 #
7458次浏览 150人参与
# 晒一晒我的offer #
2810989次浏览 49798人参与
# 在国企工作的人,躺平了吗? #
72191次浏览 876人参与
# 来聊聊机械薪资天花板是哪家 #
21699次浏览 172人参与
# 第一次面试 #
16115次浏览 245人参与
# 机械人,你的秋招第一份简历被谁挂了 #
26827次浏览 490人参与
# 华为求职进展汇总 #
440188次浏览 4423人参与
# 你更愿意参加线上面试还是线下面试? #
6718次浏览 93人参与
# 简历中的项目经历要怎么写 #
379386次浏览 6381人参与
# 通信硬件薪资爆料 #
146440次浏览 1105人参与
# 机械人怎么评价今年的华为 #
54492次浏览 449人参与
# 机械人的薪资开到多少,才适合去? #
44695次浏览 267人参与
# 女生做医疗销售有前景吗 #
3806次浏览 48人参与