2
private Map<String, Integer> map;3
private Map<String, Integer> words;6
this.map = new HashMap<>();7
this.words = new HashMap<>();10
public void insert(String key, int val) {11
Integer lookup = this.words.getOrDefault(key, null);13
if (lookup == null) diff = val;14
else diff = val - lookup;18
StringBuilder sb = new StringBuilder();19
for (int i = 0; i < k; i++) {20
sb.append(key.charAt(i));22
String prefix = sb.toString();23
map.put(prefix, map.getOrDefault(prefix, 0) + diff);26
this.words.put(key, val);29
public int sum(String prefix) {30
return this.map.getOrDefault(prefix, 0);35
* Your MapSum object will be instantiated and called as such: MapSum obj = new MapSum();36
* obj.insert(key,val); int param_2 = obj.sum(prefix);