[SWEA] 1218. 괄호 짝짓기(D4)

ERror.ASER·2021년 2월 1일
0

SW Expert Academy

목록 보기
1/11
post-thumbnail

문제 - 1218.괄호 짝짓기(D4)


풀이

괄호의 짝을 맞춰주는 것을 뺀다면 어려운 문제가 아니었다.
replace 함수를 쓰면 간단하게 바뀌는 문제였다.

input = input.replace("()", "").replace("[]", "").replace("<>", "").replace("{}", "");				

순서는 이와 같다. 기존의 문자열에서 ()를 없앤 문자열에서 []를 없애고, []까지 없앤 문자열에서 <>를 없애고, <>까진 없앤 문자열에서 {}까지 없앤 것을 input에 넣어준 것이다.

([<{}>])면 처음에는 {} 하나만 없어지고, 모든 괄호를 없애려면 while문이 4번 돌아가지만 {<[()]>} 는 한번에 다 없어진다.

import java.util.Scanner;
import java.io.FileInputStream;

class Solution
{
	public static void main(String args[]) throws Exception
	{
		Scanner sc = new Scanner(System.in);

		for(int i=1; i<=10; i++) {
			int n = sc.nextInt();
			String input = sc.next();

			while(n/2>0) {
				if(input.length() == 0) break;
				input = input.replace("()", "").replace("[]", "").replace("<>", "").replace("{}", "");
				n--;
			}
			
			if(input.length()==0)
				System.out.println("#"+i+" "+1);
			else
				System.out.println("#"+i+" "+0);
		}
	}
}
profile
지우의 블로그

0개의 댓글