2009~2014/C/C++
[C언어 기출문제&풀이] dream counting
malu
2010. 11. 14. 18:58
프로그램 명: dream_counting
제한시간: 1 초
[문제 요약] 두 정수 M, N 을 입력으로 받아 M 부터 N 까지의 각 자리수의 빈도수 합을 구하는 것이 문제이다.
예를 들어 , 129 와 137 이 주어지면 , 129, 130, 131, 132, 133, 134, 135, 136, 137
1 번의 0 , 10 번의 1 , ....
1x0 | 1x5 |
10x1 | 1x6 |
2x2 | 1x7 |
9x3 | 0x8 |
1x4 | 1x9 |
입력
두 정수 M , N 이 입력으로 주어진다. (1 <= M <= N <= 2,000,000,000 , N-M <= 500,000)출력
0 부터 9 까지의 빈도 수를 출력한다.입출력 예
입력 129 137 출력 1 10 2 9 1 1 1 1 0 1
출처:usaco
소스코드
#include <stdio.h>
int main()
{
long m,n,bin[10]={0,},temp,i;
scanf("%d %d",&m,&n);
for(i=m;i<=n;i++)
{
temp=i;
for(;temp>=1;)
{
bin[temp%10]++;
temp/=10;
}
}
for(i=0;i<10;i++)
printf("%d ",bin[i]);
}