[Bronze_I] 정답 비율 39%
https://www.acmicpc.net/problem/1157
for
문 안의 종료조건으로 i<strlen(input
을 넣었더니 시간 초과가 나왔다.strlen
을 넣으면 for문이 반복될 때마다 strlen
함수를 호출해 길이를 잰다고 한다.int
변수에 strlen
의 값을 넣어준 뒤 종료조건에 넣어서 해결하였다.#include <stdio.h>
#include <string.h>
int main(){
int lists[26] = {0};
int index = 0;
int max_index = 0;
char max_value='A';
char input[1000001];
scanf("%s", input);
// printf("%d %d\n", 'a', 'z'); // 97 ~ 122
// printf("%d %d", 'A', 'Z'); // 65 ~ 90
int len = strlen(input);
for(int i=0; i<len; i++){
if(input[i]>95)
index = input[i]-97;
else
index = input[i]-65;
lists[index]++;
}
for(int i=1; i<26; i++){
if(lists[max_index]==lists[i])
max_value = '?';
else if(lists[max_index]<lists[i]){
max_index = i;
max_value = 'A'+i;
}
}
printf("%c", max_value);
return 0;
}
``