package leetCode;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class LeetCode554 {
public static void main(String[] args) {
List<Integer> list1 = new ArrayList<>();
list1.add(1);
list1.add(2);
list1.add(2);
list1.add(1);
List<Integer> list2 = new ArrayList<>();
list2.add(3);
list2.add(1);
list2.add(2);
List<Integer> list3 = new ArrayList<>();
list3.add(1);
list3.add(3);
list3.add(2);
List<Integer> list4 = new ArrayList<>();
list4.add(2);
list4.add(4);
List<Integer> list5 = new ArrayList<>();
list5.add(3);
list5.add(1);
list5.add(2);
List<Integer> list6 = new ArrayList<>();
list6.add(1);
list6.add(3);
list6.add(1);
list6.add(1);
List<List<Integer>> list = new ArrayList<List<Integer>>();
list.add(list1);
list.add(list2);
list.add(list3);
list.add(list4);
list.add(list5);
list.add(list6);
System.out.println(list);
LeetCode554 leet554 = new LeetCode554();
Solution solution = leet554.new Solution();
int i = solution.leastBricks(list);
System.out.println(i);
}
class Solution {
public int leastBricks(List<List<Integer>> wall) {
Map<Integer, Integer> map = new HashMap<>();
List<Integer> listsum = new ArrayList<>();
int count = 0;
for (int x = 0; x < wall.size(); x++) {
if (wall.get(x).size() == 1)
count++;
}
if (count == wall.size())
return count;
for (int i = 0; i < wall.size(); i++) {
int sum = 0;
List<Integer> list = wall.get(i);
for (int j = 0; j < list.size() - 1; j++) {
sum = sum + list.get(j);
Integer value1 = map.put(sum, map.getOrDefault(sum, 0) + 1);
listsum.add(sum);
}
}
int m = 0;
int n = 0;
for (int i = 1; i < listsum.size(); i++) {
if (m < map.get(listsum.get(i))) {
m = map.get(listsum.get(i));
}
}
System.out.println(m + "\t555");
n = wall.size() - m;
return n;
}
}}