본문 바로가기
공부 정리/백준

[백준] 자바 20001 고무오리 디버깅

by 경적필패. 2021. 6. 28.
반응형

문제

백준 문제 풀이에 힘들어하는 수진이를 위해 민우는 문제 해결에 도움이 되는 고무 오리를 준비했다. 민우가 준비한 고무 오리는 신비한 능력이 존재하는데, 최근에 풀던 백준 문제를 해결해주는 능력이다. 신비한 고무 오리와 함께 수진이의 백준 풀이를 도와주자!

고무 오리의 사용법은 다음과 같다.

  • "고무 오리 디버깅 시작"이라고 외친다
  • 문제들을 풀기 시작한다
  • 고무오리를 받으면 최근 풀던 문제를 해결한다
  • "고무 오리 디버깅 끝"이라고 외치면 문제풀이를 종료한다.

하지만 고무오리에는 치명적인 문제가 있는데, 풀 문제가 없는 데 사용한다면 고무 오리는 체벌로 두 문제를 추가한다는 점이다.

입력

첫 번째 줄에 "고무오리 디버깅 시작"이라고 주어진다. 두 번째 줄부터 "고무 오리" 또는 "문제"가 주어진다. 이는 "고무 오리 디버깅 끝"이 주어질 때까지 반복한다. 최대 102줄이 입력으로 주어진다.

출력

고무오리 디버깅이 끝날 때, 주어진 문제를 수진이가 해결하였는지 여부에 따라 남은 문제없이 모든 문제를 해결하였으면 "고무 오리야 사랑해"을 출력하고 하나라도 문제가 남았다면 "힝구"를 출력하라.


테스트 케이스

초록색 입력 / 검은색 출력

 

 


접근

"고무오리 디버깅 시작"으로 프로그램이 시작되고 "고무 오리 디버깅 끝"으로 프로그램이 종료됩니다.

"문제"라는 입력이 들어오면 count+1을하고,

"고무 오리"라는 입력이 들어오면 count-1을 하며,

count가 0인데 "고무 오리" 입력이 들어오면 count+2를 하면 문제가 해결됩니다.

 

출력은 count가 0이면 "고무 오리야 사랑해"

count가 0이 아니면 "힝구"


코드

import java.awt.desktop.SystemEventListener;
import java.io.*;
import java.math.*;
import java.util.*;

public class Main {

	/*
 	20001 problem 고무오리 디버깅
	*/
	public static void main(String[] args) throws NumberFormatException, IOException {
		// TODO Auto-generated method stub
		
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
		ArrayList<Integer> list = new ArrayList<>();
		
		String input = br.readLine();
		String str = "고무오리 디버깅 시작";
		String repeatInput ="";
		int count = 0;
		
		while(str.equals(input)) {
			repeatInput = br.readLine();
			if(repeatInput.equals("고무오리") && count==0) {
				count += 2;
			}
			else if(repeatInput.equals("문제")) {
				count++;
			}
			else if(repeatInput.equals("고무오리")){
				count--;
			}
			
			if(repeatInput.equals("고무오리 디버깅 끝")) {
				input ="고무오리 디버깅 끝";
				if(count==0) {
					bw.write("고무오리야 사랑해");
				}
				else {
					bw.write("힝구");
				}
			}
		}
		bw.flush();
		bw.close();
	}
}

주의

자바의 문자열 비교는 ==로하면 객체를 비교하기 때문에 정상적인 비교가 불가합니다.

equals함수를 이용하여 비교하여야 합니다.

 

반응형

'공부 정리 > 백준' 카테고리의 다른 글

[백준] 자바 10829 이진수 변환  (0) 2021.06.30
[백준] 자바 1158 요세푸스 문제  (0) 2021.06.29
[백준] 자바 17608 막대기  (0) 2021.06.25
[백준] 자바 2161 카드1  (0) 2021.06.24
[백준] 자바 1009 분산처리  (0) 2021.03.31

댓글