```
백준 4447번 좋은 놈 나쁜 놈 JAVA 구현해보기
```

이번 글을 통해 배워갈 내용
- 백준 4447번 풀이
https://www.acmicpc.net/problem/4447
4447번: 좋은놈 나쁜놈
비키니시티에는 초능력을 가진 수퍼 히어로들로 바글바글하다. 스폰지밥과 패트릭은 주어진 문자열로 좋은놈과 나쁜놈을 골라내려 한다. 스폰지밥: 우와, 문자열에서 강한 힘이 느껴지는데!
www.acmicpc.net
백준 4447번은
난이도 브론즈 등급의 문제로서
테스트 케이스만큼 문자열이 주어지고
해당 문자열을 분석해서
g 가 더 많으면 GOOD
b 가 더 많으면 A BADDY
같으면 NEUTRAL
을 출력하면 되는 문제입니다.
30분 정도 위에 링크를 방문하셔서 풀어보시고
안 풀리시는 경우에만 아래 해답을 봐주시면 감사하겠습니다.
입력을 받고
정해진 조건에 맞춰서 b 와 g를 카운팅 한 다음 비교해서 출력해주었습니다.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;
public class Main {
public static void main(String[] args) throws IOException {
final BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
final int testCase = Integer.parseInt(br.readLine());
List<String> inputList = new ArrayList<>();
for (int i = 0; i < testCase; i++) {
inputList.add(br.readLine());
}
System.out.print(solution(inputList));
}
public static String solution(List<String> inputList) {
StringBuilder sb = new StringBuilder();
inputList.forEach(input -> {
sb.append(input).append(" is ");
final String lowerCaseInput = input.toLowerCase(Locale.ROOT);
final int gCount = lowerCaseInput.split("g", -1).length - 1;
final int bCount = lowerCaseInput.split("b", -1).length - 1;
if (gCount > bCount) {
sb.append("GOOD");
} else if (gCount < bCount) {
sb.append("A BADDY");
} else {
sb.append("NEUTRAL");
}
sb.append("\n");
});
if (sb.length() > 0) {
sb.setLength(sb.length() - 1);
}
return sb.toString();
}
}
// https://codemasterkimc.tistory.com
읽어주셔서 감사합니다
무엇인가 얻어가셨기를 바라며
오늘도 즐거운 코딩 하시길 바랍니다 ~ :)
728x90
'Java > Java 알고리즘' 카테고리의 다른 글
| 백준 9506번 약수들의 합 JAVA 구현해보기 (0) | 2022.06.05 |
|---|---|
| 백준 9610번 사분면 JAVA 구현해보기 (0) | 2022.06.05 |
| 백준 2914번 JAVA 구현해보기 (1) | 2022.06.05 |
| 백준 5086번 배수와 약수 JAVA 구현해보기 (0) | 2022.06.05 |
| 백준 5063번 TGN JAVA 구현해보기 (1) | 2022.06.04 |