되는대로 살자

[C언어 기출문제&풀이] dream counting 본문

2009~2014/C/C++

[C언어 기출문제&풀이] dream counting

malu 2011. 8. 14. 21:01
프로그램 명: 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

풀이 :
1. 모든 자릿 수를 분리한다.( 이 부분은 앞에서 수도없이 나왔기 때문에 생략 )
2. 나눠진 자릿수 값을 인자로 하여 1 증가시킨다.
3. 앞을 반복한다.