Skip to content

Commit 83f2fd7

Browse files
add 1807
1 parent 435aef3 commit 83f2fd7

File tree

2 files changed

+31
-0
lines changed

2 files changed

+31
-0
lines changed

README.md

+1
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ _If you like this project, please leave me a star._ ★
88

99
| # | Title | Solutions | Video | Difficulty | Tag
1010
|-----|----------------|---------------|--------|-------------|-------------
11+
|1807|[Evaluate the Bracket Pairs of a String](https://leetcode.com/problems/evaluate-the-bracket-pairs-of-a-string/)|[Solution](../master/src/main/java/com/fishercoder/solutions/_1807.java) ||Medium|HashTable, String|
1112
|1806|[Minimum Number of Operations to Reinitialize a Permutation](https://leetcode.com/problems/minimum-number-of-operations-to-reinitialize-a-permutation/)|[Solution](../master/src/main/java/com/fishercoder/solutions/_1806.java) ||Medium|Array, Greedy|
1213
|1805|[Number of Different Integers in a String](https://leetcode.com/problems/number-of-different-integers-in-a-string/)|[Solution](../master/src/main/java/com/fishercoder/solutions/_1805.java) ||Medium|String|
1314
|1800|[Maximum Ascending Subarray Sum](https://leetcode.com/problems/maximum-ascending-subarray-sum/)|[Solution](../master/src/main/java/com/fishercoder/solutions/_1800.java) ||Easy|Two Pointers|
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
package com.fishercoder.solutions;
2+
3+
import java.util.HashMap;
4+
import java.util.List;
5+
import java.util.Map;
6+
7+
public class _1807 {
8+
public static class Solution1 {
9+
public String evaluate(String s, List<List<String>> knowledge) {
10+
Map<String, String> map = new HashMap<>();
11+
for (List<String> know : knowledge) {
12+
map.put(know.get(0), know.get(1));
13+
}
14+
StringBuilder sb = new StringBuilder();
15+
for (int i = 0; i < s.length(); i++) {
16+
if (s.charAt(i) == '(') {
17+
int start = i;
18+
while (i < s.length() && s.charAt(i) != ')') {
19+
i++;
20+
}
21+
String key = s.substring(start + 1, i);
22+
sb.append(map.getOrDefault(key, "?"));
23+
} else {
24+
sb.append(s.charAt(i));
25+
}
26+
}
27+
return sb.toString();
28+
}
29+
}
30+
}

0 commit comments

Comments
 (0)