알고리즘/백준
백준 1157 단어 공부 - JAVA
놀이방사장님
2023. 8. 19. 00:00
728x90
반응형
안녕하세요 놀이방 사장입니다.
이번 포스팅은 백준 1157
단어공부 - JAVA입니다.
1157번: 단어 공부
알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다.
www.acmicpc.net
이 문제는 문자열을 받아서 가장 많이 된 알파벳을 찾는 것인데
대소문자를 구분하지 않고 찾아야합니다.
저는 문자열을 받아서 먼저 대문자로 반환해야하기 때문에 대문자로 변환해줬습니다.
toUpperCase()
그 후 알파벳 숫자만큼 배열을 선언해줍니다.
문자열 만큼 for을 돌리고 아스키 코드를 이용해 알파벳이 있을 경우 해당 알파벳 순서에 값을 ++ 해줍니다.
그 다음 가장 많이 사용된 알파벳과 몇개 있는지 max_seq와 max에 담아줍니다.
그리고 많이 사용된 알파벳이 여러개 존재할 경우 ? 출력해야하기 때문에
max_seq+1 부터 max랑 같은 값이 있는지 확인하고 check 변수를 선언해 있으면 1을 반환합니다.
출력부분에서
check가 1일 경우 가장 많이 사용된 문자가 2개이기때문에
? 반환
아닐 시 max_seq반환 => 아스키코드로 보여줘야하니깐 숫자 65를 더하고 char형으로 변환해주면 됩니다.!
반응형