반응형
풀이
- 해당 문제는 단순하게 풀 수 있는 문제로
- 현재 체중이 적정 체중의 1/2 초과 2배 미만으로 있는지에 대한 여부와
- 0이하의 체중 그리고 이외 이렇게 분류해서 해결할 수 있는데
- 여기서 간과했던 부분으로는 문제의 마지막에 있는 문장으로
- ` 매 작용이 끝날 때마다 펫은 자신의 상태를 표시하며, 펫이 중간에 죽는다면 이후의 작용은 무시됩니다.`
- 위 조건을 적용해야 해결이 되기에 state를 두어 해결 할 수 있도록 함.
import java.io.*;
import java.util.*;
public class 펫 {
public static void main(String[] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
Long cnt = 0L;
while (true) {
Boolean state = false;
cnt++;
StringTokenizer st1 = new StringTokenizer(br.readLine());
Integer o = Integer.parseInt(st1.nextToken());
Integer w = Integer.parseInt(st1.nextToken());
if (o == 0 && w == 0) break;
while (true) {
StringTokenizer st2 = new StringTokenizer(br.readLine());
String x = st2.nextToken();
if (x.equals("#")) break;
else if (x.equals("E")) w -= Integer.parseInt(st2.nextToken());
else w += Integer.parseInt(st2.nextToken());
if (w <= 0) state = true;
}
if (w <= 0 || state) System.out.println(cnt + " "+ "RIP");
else if (o/2 < w && w < o*2) System.out.println(cnt + " "+ ":-)");
else System.out.println(cnt + " "+ ":-(");
}
}
}
'알고리즘' 카테고리의 다른 글
[백준, 자바, 1392번] 노래 악보 (1) | 2024.01.08 |
---|---|
[백준, 파이썬, 1392번] 노래 악보 (0) | 2024.01.08 |
[백준, 파이썬, 1362번] 펫 (1) | 2024.01.03 |
[백준, 자바, 1357번] 뒤집힌 덧셈 (0) | 2024.01.03 |
[백준, 파이썬, 1357번] 뒤집힌 덧셈 (0) | 2024.01.03 |