1157번 - 단어 공부
#include<stdio.h>int main(){ int i=0,end,a[96],max1=0,max2,count=0; char s[1000000]; for(i=0;i<=96;i++){ a[i]=0; } gets(s); while(s[i] != 0) i++; end=i; for(i=0;i<=end;i++){ if(s[i]>=97) s[i]-=32; a[s[i]]++; } for(i=65;i<=96;i++){ if(a[i]>max1){ max1=a[i]; max2=i; } } for(i=65;i<=96;i++){ if(a[max2]==a[i]) count++; } if(count>1) printf("?"); else printf("%c",max2);
}
네 int a[96];은 int형 배열인 0~95개, 총 96개의 인덱스를 가진 배열을 생성하는 것입니다.
댓글을 작성하려면 로그인해야 합니다.
znxnsken 7년 전
#include<stdio.h>
int main(){
int i=0,end,a[96],max1=0,max2,count=0;
char s[1000000];
for(i=0;i<=96;i++){
a[i]=0;
}
gets(s);
while(s[i] != 0)
i++;
end=i;
for(i=0;i<=end;i++){
if(s[i]>=97)
s[i]-=32;
a[s[i]]++;
}
for(i=65;i<=96;i++){
if(a[i]>max1){
max1=a[i];
max2=i;
}
}
for(i=65;i<=96;i++){
if(a[max2]==a[i])
count++;
}
if(count>1)
printf("?");
else
printf("%c",max2);
}