ArrayList를 사용해서 정렬한뒤 값을 구하면 될줄 알았는데 ArrayList가 아직 숙달 되지 않아서 쓰지 못했다.

arraylist에 값을 저장하는 방법이 있는지, 있으면 어떻게 써야 하는지 찾아봐야겠다. 

그냥 배열에 값을 저장하고 문제를 풀었다.


import java.util.Scanner;
public class Main {
public static void main(String[] args){
int[] cnt = new int[26];
int a =0;
int compare = 0;
int compare2=0;
int repeat=0;
Scanner sc = new Scanner(System.in);
String input = sc.nextLine();
for(int i=0; i<input.length(); i++) {
if(input.charAt(i)<123 && input.charAt(i)>96) {
a = input.charAt(i)-97;
}else {
a= input.charAt(i)-65;
}
cnt[a] = cnt[a] +1;
}
for(int i=0; i<cnt.length; i++) {
if(compare<=cnt[i]) {
compare=cnt[i];
compare2 = i; //제일 많이 쓰인 값이 있는 배열 인덱스
}
}
for(int i=0; i<cnt.length; i++) {
if(compare2!=i) {
if(cnt[i]==compare) {
repeat=1;
}
}
}
if(repeat==1) {
System.out.print("?");
}else {
System.out.println((char)(compare2+65));
}
}
}
view raw test.java hosted with ❤ by GitHub

+ Recent posts