Problem:
Score : 200 points

Problem Statement

Find the sum of the integers between 1 and N (inclusive), whose sum of digits written in base 10 is between A and B (inclusive).

Constraints

1 \leq N \leq 10^4

1 \leq A \leq B \leq 36

All input values are integers.

Input

Input is given from Standard Input in the following format:

N A B

Output

Print the sum of the integers between 1 and N (inclusive), whose sum of digits written in base 10 is between A and B (inclusive).

Sample Input 1

20 2 5

Sample Output 1

84

Among the integers not greater than 20, the ones whose sums of digits are between 2 and 5, are: 2,3,4,5,11,12,13,14 and 20. We should print the sum of these, 84.

Sample Input 2

10 1 2

Sample Output 2

13

Sample Input 3

100 4 16

Sample Output 3

4554

Solution in Fortran (gfortran v4.8.4) (judge verdict: Accepted)

program main
  implicit none
  
  integer :: n,a,b,m,i,j,s,h,sn,cou=0,o
  
  read(*,*)n,a,b
  
  do i = 1, n
    s = 0
    if (i <= 9) then
      s = i
    else if (i <= 99) then
      j = int(i/10)
      o = i - j*10
      s = j + o
    else if (i <= 999) then
      h = int(i/100)
      j = int((i - h*100)/10)
      o = i - h*100 - j*10
      s = h+j+o
    else if (i <= 9999) then
      sn = int(i/1000)
      h = int((i - sn*1000)/100)
      j = int((i - sn*1000 - h*100)/10)
      o = i - sn*1000 - h*100 - j*10
      s = sn+h+j+o
    else
      s = 1
    end if
    
    if ((a <= s) .and. (s <= b)) then
      cou = cou + i
    end if
  end do
  
  write(*,*)cou
end program main