N자리의 자연수가 입력되면 입력된 자연수의 자릿수 중 가장 많이 사용된 숫자를 출력하는 프
로그램을 작성하세요.
예를 들어 1230565625라는 자연수가 입력되면 5가 3번 상용되어 가장 많이 사용된 숫자입니
다. 답이 여러 개일 경우 그 중 가장 큰 수를 출력하세요.
▣ 입력설명
첫 줄에 자연수가 입력됩니다. 자연수의 길이는 100을 넘지 않습니다.
▣ 출력설명
자릿수의 곱을 출력합니다.
▣ 입력예제 1
1230565625
▣ 출력예제 1
5
#include
using namespace std;
int ch[10]; // 전역변수로 설정 0으로 초기화 시킬려고.
int main() {
int res,i,pos=0,max=-2147000000;
char a[101];
cin >> a;
for(i=0;a[i]!='\0';i++){
pos=a[i]-48;
ch[pos]++;
}
//ch배열 안에서 가장 많이 사용된 자릿수 구하기
for(i=0; i<=9;i++){
if(ch[i]>=max){
max=ch[i];
res=i;
}
}
cout<<res;
return 0;
}
//이문제에서는 답이 여러 개일 경우 그 중 가장 큰 수를 출력하세요.
인데 답이 여러 개일 경우 그중 가장 작은 수를 출력하세요로 바꾸어서
코딩해본다면
for(i=0; i<=9;i++){
if(ch[i]>max){
max=ch[i];
res=i;
}
if(ch[i]==max){
if(ch[i]<res)
res=i;
}
}
이렇게 수정하면된다.