
4949๋ฒ: ๊ท ํ์กํ ์ธ์
ํ๋ ๋๋ ์ฌ๋ฌ์ค์ ๊ฑธ์ณ์ ๋ฌธ์์ด์ด ์ฃผ์ด์ง๋ค. ๊ฐ ๋ฌธ์์ด์ ์๋ฌธ ์ํ๋ฒณ, ๊ณต๋ฐฑ, ์๊ดํธ("( )") ๋๊ดํธ("[ ]")๋ฑ์ผ๋ก ์ด๋ฃจ์ด์ ธ ์์ผ๋ฉฐ, ๊ธธ์ด๋ 100๊ธ์๋ณด๋ค ์๊ฑฐ๋ ๊ฐ๋ค. ๊ฐ ์ค์ ๋ง์นจํ(".")๋ก ๋๋๋ค
www.acmicpc.net
๋ฌธ์

์์

ํ์ด
9012๋ฒ ๊ดํธ ๋ฌธ์ ์ ์ ๊ทธ๋ ์ด๋ ๋ฒ์ ์ธ ๋ฌธ์ ๋ผ๊ณ ํ ์ ์๋ค.
[๋ฐฑ์ค] 9012๋ฒ : ๊ดํธ
9012๋ฒ: ๊ดํธ ๊ดํธ ๋ฌธ์์ด(Parenthesis String, PS)์ ๋ ๊ฐ์ ๊ดํธ ๊ธฐํธ์ธ ‘(’ ์ ‘)’ ๋ง์ผ๋ก ๊ตฌ์ฑ๋์ด ์๋ ๋ฌธ์์ด์ด๋ค. ๊ทธ ์ค์์ ๊ดํธ์ ๋ชจ์์ด ๋ฐ๋ฅด๊ฒ ๊ตฌ์ฑ๋ ๋ฌธ์์ด์ ์ฌ๋ฐ๋ฅธ ๊ดํธ ๋ฌธ์์ด(Valid P
pids.tistory.com
๋ฌธ์์ด ์ ๋ ฅ์ ๋ฐ๊ณ ํด๋น ๋ฌธ์์ด์ด .์ด๋ฉด ์ข ๋ฃํ๊ณ ๋ฒํผ์ ์๋ ๊ฑธ ์ถ๋ ฅํ๋ค.
์ฌ๋ ๊ดํธ์ ์ฌ๋ ๋๊ดํธ๋ push()๋ฅผ ํตํด ์คํ์ ๋ฃ์ด์ฃผ๊ณ ,
๋ซ๋ ๊ดํธ๋ฅผ ์ ๋ ฅ๋ฐ์ผ๋ฉด ์คํ์ด ๋น์ด์๊ฑฐ๋, pop()ํ ์์๊ฐ ์ฌ๋ ๊ดํธ์ธ์ง peek()๋ฅผ ํตํด์ ํ์ธํ๋ค.
๋๊ดํธ ๋ํ ์์ ๊ฐ์ด ํ์ธํ๊ณ , ๋ง์ฝ ์์ ๊ฐ์ ์ํฉ์ผ์ "no"๋ฅผ return ํ๋ค.
๋ง์ง๋ง์ผ๋ก ์กฐ๊ฑด๋ฌธ์ ํตํด ์คํ์ด ๋น์ด์์ผ๋ฉด "yes", ๋จ์์์ผ๋ฉด "no"๋ฅผ ๋ฐํํ๋ค.
์์ค ์ฝ๋
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Stack;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
while (true) {
Stack<Character> stack = new Stack<>();
String str = br.readLine();
if (str.equals(".")) break;
sb.append(bracket(str)).append('\n');
}
System.out.println(sb);
}
public static String bracket(String str) {
Stack<Character> stack = new Stack<>();
for (int i = 0; i < str.length(); i++) {
char c = str.charAt(i);
if (c == '(' || c == '[') {
stack.push(c);
}
else if (c == ')') {
if (stack.empty() || stack.peek() != '(') {
return "no";
}
else stack.pop();
}
else if (c == ']') {
if (stack.empty() || stack.peek() != '[') {
return "no";
}
else stack.pop();
}
}
if (stack.empty()) return "yes";
else return "no";
}
}'๐ Algorithm > ๋ฐฑ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [๋ฐฑ์ค] 1874๋ฒ : ์คํ ์์ด (0) | 2023.01.14 |
|---|---|
| [๋ฐฑ์ค] 18111๋ฒ : ๋ง์ธํฌ๋ํํธ (0) | 2023.01.14 |
| [๋ฐฑ์ค] 10773๋ฒ : ์ ๋ก (0) | 2023.01.13 |
| [๋ฐฑ์ค] 10845๋ฒ : ํ (JAVA) (1) | 2023.01.12 |
| [๋ฐฑ์ค] 2606๋ฒ : ๋ฐ์ด๋ฌ์ค (1) | 2023.01.11 |