1class Solution {2public ListNode removeZeroSumSublists(ListNode head) {34ListNode dummy = new ListNode(0);5dummy.next = head;67int prefix = 0;8ListNode curr = dummy;9Map<Integer, ListNode> seen = new HashMap<>();10seen.put(prefix, dummy);1112while (curr != null) {13prefix += curr.val;14seen.put(prefix, curr);15curr = curr.next;16}1718prefix = 0;19curr = dummy;20while (curr != null) {21prefix += curr.val;22curr.next = seen.get(prefix).next;23curr = curr.next;24}2526return dummy.next;27}28}