如题
很显然,就是比较每个缺口处的线穿过的砖块数
public static int leastBricks(List<List<Integer>> wall) {
int count=0;//对应缺口位置相同的层数
Map<Integer,Integer> sumMap =new HashMap<Integer, Integer>();//缓存对应位置缺口的层数
for(List<Integer> lis:wall) {
int sumi=0; //缺口位置
for(int in=0;in<lis.size()-1;in++) {
sumi+=lis.get(in);
if(sumMap.containsKey(sumi)){
sumMap.put(sumi, sumMap.get(sumi)+1);
}else {
sumMap.put(sumi, 1);
}
}
}
for(int i:sumMap.keySet()) {
count=sumMap.get(i)>count?sumMap.get(i):count;//取最大值
}
return wall.size()-count;
}
结果