반응형
안녕하세요 Jin's 입니다.
백준 알고리즘의 문자열 중 단어 공부 ( 문제 번호 : 1157 )의 소스입니다.
Java와 Python 두가지 버전 소스입니다.
1) JAVA
import java.util.Scanner;
public class Main {
public static void main(String[] args){
Scanner scan = new Scanner(System.in);
String word = scan.nextLine().toUpperCase(); //대소문자 구별하지 않기위해
scan.close();
int[] arr = new int[26];
int max = 0;
char result ='?';
for(int i=0; i<word.length(); i++){
arr[word.charAt(i)-'A']++; //index를 0부터 하기 위해서 arr[0]=>'A'값이 들어가도록
if(max < arr[word.charAt(i)-'A']){
max = arr[word.charAt(i)-'A'];
result = word.charAt(i);
}else if(max == arr[word.charAt(i)-'A']){ //가장 많이 사용된 알파벳이 여러 개 존재
result='?';
}
}
System.out.println(result);
}
}
2) PYTHON
* set으로 중복되는 단어 미리 제거 후 해당 단어들에 대하여 count 한 것을 max 값과 비교
word = input().upper()
w_list = set(word)
result = ''
max_cnt = 0
for i in w_list:
if max_cnt < word.count(i):
max_cnt = word.count(i)
result = i
elif max_cnt == word.count(i):
result = '?'
print(result)
여러분도 한번 풀어보세요!
반응형
'Development > 알고리즘' 카테고리의 다른 글
[ 백준 알고리즘 ] 2908번 상수 (JAVA/python) (0) | 2020.07.02 |
---|---|
[ 백준 알고리즘 ] 1152번 단어의 개수 (JAVA/python) (0) | 2020.07.01 |
[ 백준 알고리즘 ] 2675번 문자열 반복 (JAVA/python) (0) | 2020.06.29 |
[ 백준 알고리즘 ] 10809번 알파벳 찾기 (JAVA/python) (0) | 2020.06.28 |
[ 백준 알고리즘 ] 11720번 숫자의 합 (JAVA/python) (0) | 2020.06.26 |