https://www.acmicpc.net/problem/2083
설명
나이가 18세 이상이거나, 몸무게가 80kg 이상이면 성인부. 그 외에는 청소년부다. 입력받은 대로 바로 결과 출력한다.
풀이
1. 입력은 String으로 받되, 공백 기준으로 분리해서 배열에 저장
2. 나이와 몸무게는 int형으로 변환 필요
- java.lang.Integer 클래스의 parseInt() 혹은 valueOf() 메소드를 사용
※ 주의할 점 : 동일한 걸 찾으려고 할 때 == 말고 무조건 eqauls()
Solution
import java.util.Scanner;
public class _2083 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while (true) {
String[] member = sc.nextLine().split(" "); //회원 정보 입력 받고 공백 기준으로 분리
//마지막 줄 처리
if (member[0].equals("#")) {
break;
}
int age = Integer.parseInt(member[1]);
int weight = Integer.parseInt(member[2]);
if (age > 17 || weight >= 80) { //17세 이상이거나 80kg 이상
System.out.println(member[0] + " Senior");
} else { //17세 미만이거나 80kg 이하
System.out.println(member[0] + " Junior");
}
}
sc.close();
}
}
👩💻 회고
문자열이 같은지 비교할 때 아무생각 없이 '==' (동일성) 을 사용해서 마지막 줄을 처리하려는데 while문을 계속 빠져나오지 못해서 답답했었다. 근데 갑자기 equals()를 사용해야 한다는 걸 뒤늦게 깨달아버렸다. 그래도 혼자 해결했으니 이만하면 만족이다. 파이썬 쓰다버릇 고쳐고쳐.
'BOJ 코딩테스트 > Bronze' 카테고리의 다른 글
BOJ 4299 : AFC 윔블던 (Java/구현/Bronze 4) (2) | 2024.10.08 |
---|---|
BOJ 2845 : 파티가 끝나고 난 뒤 (Java/구현/Bronze 4) (1) | 2024.09.30 |
BOJ 29731 : 2033년 밈 투표 (Java/구현/Bronze 5) (1) | 2024.09.28 |
BOJ 10886번 : 0 = not cute / 1 = cute (Java/구현/Bronze 3) (0) | 2024.03.27 |
BOJ 2441번 : 별 찍기 - 4 (Java/구현/Bronze 4) (0) | 2024.03.26 |