-
[BOJ/백준] 1157번 단어 공부 _Java알고리즘/백준(BOJ) 2023. 8. 1. 09:45728x90반응형
백준 1157. 단어 공부 _Java
🧶 코드
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; import java.util.Collections; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String [] str = br.readLine().toUpperCase().split(""); String[] str2 = Arrays.stream(str).distinct().toArray(String[]::new); // 배열 -> stream -> distinct(중복 제거) -> 배열 int max = 0; String ans = null; for(String s:str2) { int cnt = Collections.frequency(Arrays.asList(str), s); if(cnt > max) { max = cnt; ans = s; } else if(cnt == max) ans = "?"; } System.out.println(ans); } }
배열 중복 제거하기
String[] str2 = Arrays.stream(str).distinct().toArray(String[]::new); // 배열 -> stream -> distinct(중복 제거) -> 배열
배열 내 특정 요소의 개수 구하기
Collections.frequency(구할 리스트, 찾을 문자);
int cnt = Collections.frequency(Arrays.asList(str), s);
https://www.acmicpc.net/problem/1157
LIST'알고리즘 > 백준(BOJ)' 카테고리의 다른 글
[BOJ/백준] 17070번 파이프 옮기기 1 _Java (0) 2023.08.23 [BOJ/백준] 11723번 집합 비트마스크_Java (0) 2023.08.03 [백준/BOJ] 27866번 문자와 문자열 _Java (0) 2023.07.23 [백준/BOJ] 1546번 평균 _Java (0) 2023.07.19 [백준/BOJ] 10811번 바구니 뒤집기 _Java (0) 2023.07.19