본문 바로가기
백준

백준 3477: 버그왕(java)

by unhyepnhj 2024. 8. 31.

문제


풀이

 

파일이 끝날 때까지 입력받고, replaceAll()을 사용해 "BUG"를 ""으로 변경해 주면 되는데, 이상하게 계속 오류가 나던 문제이다.

이때 BUG가 더 이상 존재하지 않을 때까지 replaceAll() 작업을 계속해야 한다는 점에 주의해야 한다.

while((str=br.readLine())!=null) {
	while(str.contains("BUG")) {
		str=str.replaceAll("BUG", "");
}

문제에 주어진 "ABUBUGGB"의 경우, 첫 번째 replaceAll()로 BUG를 삭제(밑줄 친 부분)하면 " ABUGB"가 되어 다시 BUG 문자열이 생기므로, 이 경우 while문을 이용해 문자열에 BUG가 존재하지 않을 때까지 반복해야 한다.

 

전체 코드

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
	public static void main(String[] args) throws IOException{
		BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
		StringBuilder sb=new StringBuilder();
		
		String str;
		
		while((str=br.readLine())!=null) {
			while(str.contains("BUG")) {
				str=str.replaceAll("BUG", "");
			}
			
			System.out.println(str);
		}
	}
}

'백준' 카테고리의 다른 글

백준 18870: 좌표 압축(java)  (0) 2024.09.03
11659: 구간 합 구하기 4(java)  (0) 2024.09.02
백준 10816: 숫자 2(java)  (0) 2024.08.28
백준 31860: 열심히 일하는 중(java)  (0) 2024.08.25
백준 28107: 회전초밥(java)  (0) 2024.08.25