-
[백준 1157번/문자열] 단어공부 - Java코딩/백준 2022. 3. 6. 12:14
해결
: 입력받은 문자열의 길이만큼 반복문을 돌며 사용된 알파벳을 카운트 시킨다
+ 아스키 코드 이용
=> A를 카운트 한다고 하면 배열에 arr['A'-65] 하면 A의 아스키코드는 65이므로 arr[0]에 카운트 되는것
import java.util.Scanner; public class Main { // 단어공부 public static void main(String[] args) { Scanner sc = new Scanner(System.in); int[] arr = new int[26]; // 알파벳 공간 String s = sc.next(); for(int i=0; i<s.length(); i++) { if(s.charAt(i)>=65 && s.charAt(i)<=90) { // 대문자 arr[s.charAt(i)-65]++; }else { arr[s.charAt(i)-97]++; // 소문자 } } int max = -1; char answer = '?'; for(int j=0; j<arr.length; j++) { if(max<arr[j]) { max = arr[j]; answer = (char)(j+65); // 대문자로 출력 }else if(max == arr[j]) { answer = '?'; } } System.out.println(answer); } }
공부
영어를 앞으로 밀거나, 비교하거나, 바꾸는 경우 => '아스키코드' 사용이 편리
'코딩 > 백준' 카테고리의 다른 글
[백준 10870번/재귀] 피보나치 수 5 - Java (0) 2022.03.16 [백준 1152번/문자열] 단어의 개수 - Java (0) 2022.03.09 [백준 10809번/문자열] 알파벳 찾기 - Java (0) 2022.03.07 [백준 11720번/문자열] 숫자의 합 - Java (0) 2022.03.05 [백준 8958번/1차원 배열] OX퀴즈 - Java (0) 2022.03.01