import java.io.*;
import java.util.*;
public class ScannerTest2 {
public static void main(String[] args) {
Scanner sc;
try {
sc = new Scanner(System.in);
//한라인씩 읽어드림
String linedata = sc.nextLine();
StringTokenizer st =new StringTokenizer(linedata," ");
System.out.println(st.countTokens());
String [] result = new String[st.countTokens()];
int k=0;
while(st.hasMoreTokens()){
result[k]=st.nextToken();
k++;
}
//하나의 배열번지를 기준으로 모든 배열을 검색하는 소스
int max=0; // 최대 빈도수를 의미
String word ="";//가장 많이 나오는 단어
for (int i = 0; i < result.length; i++) {
int count =0; // 반복문 한번 돌때마다 값을 초기화 해줌
for (int j = 0; j < result.length; j++) {
if(result[i].equals(result[j])){
//단어와 단어가 같다면 카운트를 증가
count++;
}
}
//하나를 전부 반복한후에 count값이 max값보다 크다면
if(max < count){
max= count;
word=result[i];
}
}
System.out.println("최대 빈도 단어는 " +word +"이고 반복횟수는 "+max);
} catch (Exception e) {
e.printStackTrace();
}
}
}
- 결과