296. Best Meeting Point
Posted 我的名字叫周周
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了296. Best Meeting Point相关的知识,希望对你有一定的参考价值。
/* * 296. Best Meeting Point * 2016-7-2 by Mingyang * 这道题不难,但是有个概念就是必须清楚为什么曼哈顿距离最小是在中点的位置 * 很没有意思的一个题目,不详谈 */ public int minTotalDistance(int[][] grid) { List<Integer> ipos = new ArrayList<Integer>(); List<Integer> jpos = new ArrayList<Integer>(); // 统计出有哪些横纵坐标 for(int i = 0; i < grid.length; i++){ for(int j = 0; j < grid[0].length; j++){ if(grid[i][j] == 1){ ipos.add(i); jpos.add(j); } } } int sum = 0; Collections.sort(ipos); for(Integer pos : ipos){ sum += Math.abs(pos - ipos.get(ipos.size() / 2)); } // 计算横坐标到横坐标中点的距离,这里需要排序,因为统计不是按照j的顺序 Collections.sort(jpos); for(Integer pos : jpos){ sum += Math.abs(pos - jpos.get(jpos.size() / 2)); } return sum; }
以上是关于296. Best Meeting Point的主要内容,如果未能解决你的问题,请参考以下文章
LeetCode 296. Best Meeting Point(最佳见面点)
[LeetCode] Best Meeting Point 最佳开会地点