Skip to content

Commit 5264b55

Browse files
committed
[Stack] swea-1218
1 parent 348f662 commit 5264b55

File tree

5 files changed

+71
-4
lines changed

5 files changed

+71
-4
lines changed

Diff for: README.md

+5-4
Original file line numberDiff line numberDiff line change
@@ -114,11 +114,12 @@
114114

115115
| # || Problem | Note |
116116
| :-: | :-: | :------------------------------------------- | :--- |
117-
| 01 | | [Baekjoon-10828 스택](./src/Stack/P10828) | |
118-
| 02 | | [Baekjoon-2504 괄호의 값](./src/Stack/P2504) | |
119-
| 03 | | [Baekjoon-3425 고스택](./src/Stack/P3425) | |
117+
| 01 | | [Baekjoon-10828 스택](./src/Stack/P10828) | |
118+
| 02 | | [Baekjoon-2504 괄호의 값](./src/Stack/P2504) | |
119+
| 03 | | [Baekjoon-3425 고스택](./src/Stack/P3425) | |
120120
| 04 | | [Baekjoon-2493 탑](./src/Stack/P2493) | |
121-
| 05 | ⭐️ | [Baekjoon-2867 수열의 값](./src/Stack/P2867) | |
121+
| 05 | ⭐️ | [Baekjoon-2867 수열의 값](./src/Stack/P2867) | |
122+
| 06 | | [SWEA-1218 괄호 짝짓기](./src/Stack/swea1218) | |
122123

123124
### Queue
124125

Diff for: src/Stack/swea1218/README.md

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
## [SW Expert Academy - 1218] 괄호 짝짓기
2+
3+
![image](https://user-images.githubusercontent.com/22045163/106844140-1b854a80-66eb-11eb-8ea2-4f632a2a14ca.png)
4+
![image](https://user-images.githubusercontent.com/22045163/106844163-29d36680-66eb-11eb-811e-4b25d47a1686.png)
5+
![image](https://user-images.githubusercontent.com/22045163/106844102-ff81a900-66ea-11eb-9026-b62ac3800577.png)

Diff for: src/Stack/swea1218/Solution.java

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
package Stack.swea1218;
2+
3+
import java.io.*;
4+
import java.util.*;
5+
6+
public class Solution {
7+
8+
final static int T = 10;
9+
static String pre = "([{<", post = ")]}>";
10+
static Stack<Character> s = new Stack<>();
11+
12+
public static void main(String[] args) throws Exception {
13+
System.setIn(new FileInputStream("src/Stack/swea1218/input.txt"));
14+
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
15+
16+
for (int t = 1; t <= T; t++) {
17+
int n = Integer.parseInt(br.readLine());
18+
String input = br.readLine();
19+
20+
for (int i = 0; i < n; i++) {
21+
char cur = input.charAt(i);
22+
if (pre.indexOf(cur) >= 0) s.push(cur);
23+
else if (!s.isEmpty() && pre.indexOf(s.peek()) == post.indexOf(cur)) s.pop();
24+
else break;
25+
}
26+
27+
System.out.println("#" + t + " " + (s.isEmpty() ? 1 : 0));
28+
s.clear();
29+
}
30+
}
31+
}

Diff for: src/Stack/swea1218/input.txt

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
182
2+
(({<(({{[[[[<<[[(<[[{([{{{[<[[[{<<(<[[{}[]{}{}[]]]><><>{})[]{}><>[]<>><>}][]]<>{}]>]()}()()(){}}}{}][])(){}<>()}]{}[]]>()[][][]){}]]{}[]<>><>{}[]{}<>>]]]][]{}{}[]()}}))>}<>{}()))[][]
3+
298
4+
{({{[({([{(<[([(([<({[{{[[({{[({([<{(<[[(<((<[{[<[([((<{{[([{<<[{(<({[<{}()>[]<>][]})>[])<>()[]}]>><>(){}()[]}]{}()<>[]<>)<>{}<>{}{}]}()}<>>)[]){}])]>[][]{}]()}][]()>[]))[]>)]][]>)[]{}}[]<><>>]()[])}{}){}]}}<><>){}][]{}{}]<>[]}(){}<>}][]})[]()><>]))])]>{}{}())}{}])<>}{})]{}{}}[])())<>{}[]<><>}[]{}
5+
230
6+
[({([<[<[<<(([{([<((({<{([{[<[<<<([<[<([[{([<[{({([<(<[[][]]<>{}<>[]>){}{}<>>]{}())})}[]]{}>[][][]]()[][]<><>()<>){}}]])[][][]>]>()](){}[])>>><><>{}]>]{}[]}<>][]())}[][]>}<>)()))>{}[]()])[][]}]<>()<>))>>()][]>][][]>]())}<><>{}<>)]
7+
226
8+
[[[{{[[<[([((([({{[{<<([[[([[{<[{{<{[<[([<<<((([{(<({<([(<><>){}])()[]>}<>())>){}}]))){}>()<><>>>[]]<>)]>]{}()}(){}>()<><>}}]()>}<>{}]])<>{}]()(){}][]()])[]{}(){}<>>[]>}{}{}](){}}})()])(){}<>))][])[]()<>]<><>>]()][]{}}}[]]]]()
9+
242
10+
((([<[{{<[<{<{({(({({({<{{{((([{[({[{<{{(([[{([{<<({<[]>}){}[]()()>>}[][]()][]<>){}<>}]]))}[]}()><>[]}(){}]()[][][]})]<>}{}<>](){}){}){})<><><>{}<>[]}}<>{}{}}{}[]>{}}(){}){}<>})}))[]})()}>[]{}{}()}>]>{}[][][][]}}][][][]{}<>>][])()[]))()()[]{}
11+
138
12+
{[<(({[{(({[(({{{]{<[([[({[[[[<>]]]{}]{}})]]()<>{}{}<>()<>)()<>{}[]<>]>{}})<>()<><><>}{}}}())){}]}))}()<>()[]{}]})<><><><>)>[][][]]}<>[]{}
13+
238
14+
{<[[({[([{{(({{((<({(<{{([<{<([((<<(<{[<<([{{[<[{<{{{[<[{<{[[]]}()[][]}()}]>]}{}{}}<>[]<>{}(){}}>}]{}{}><>[]]}[]{}()[]{}}]{}())()<><>()>>]()<>}>{}[])<>()>>()))()])>{}}>])}{}{}}>)()<>[]}){}>)<>)()}}())){}<>()}[][]}]){}<>[]<>]}[])]()]()>}<>
15+
272
16+
([{[<[[([([{[[([[({([(<[[[<{(({<([{([{<{[<<((({(<{<[({<{<<([[{<[[{{[<(([{}])<>)[]>]()<>}<>}[]]]{}()>}][]]{})<>{}[]>>}>{}<>}{})()]<>><>}[][]>)<>{}}[]<>))){}[]>>[]]}[]>}][])[]}]())>[]{}{}}[]{}))}>(){}[]{}]<>{}]]()>)<><><><>[]])}{})[]()]])]]}])<>][]{}<>)()]<><>()]>]<>}<>()])
17+
218
18+
[{({[<{[<{[[[<[{[[[[{([{[<[[<<[{{((<[([[<[(<[({}[]<>[]()[]()(){}){})<>()>[][]<>[])<><>[](){}[]{}<>]><>]])]>[]){}<>)[][]}}<><>()<>]<>><>{}>[]<>]{}]>]<>}]{}())[]}[]]<>]]]}]()>]<>(){}]()<>()]()}>{}<>]{}}>]()[]()[]})()}]()
19+
258
20+
({{[({<{<<{{([[<{({{{[[({[<(<{<<{<<{{{{([{[{<{{[<<[[[<[{<(<[({(<>)})]><>[])()>{}}[]]{}<>><>]]]<>>{}>]}{}[]}>}]<>[]}]){}<>{}}[]}}}{}<>>>}>[]><><>()<>[]}><>)><><><>]}){}]]<>[]<>}[]<>{}}}()<>)}<>{}[]>][]{}])<>[][]{}}()}>[]<>>}<><>>()}{}<><>[]()())<>]}{}{}[]}[])

Diff for: src/Stack/swea1218/output.txt

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
#1 1
2+
#2 0
3+
#3 1
4+
#4 1
5+
#5 1
6+
#6 0
7+
#7 0
8+
#8 1
9+
#9 0
10+
#10 1

0 commit comments

Comments
 (0)