Study

숫자의 총 개수

show2888 2019. 8. 14. 02:44
반응형

12. 숫자의 총 개수(large)

자연수 N이 입력되면 1부터 N까지의 자연수를 종이에 적을 때 각 숫자는 몇 개 쓰였을까요?

예를 들어 1부터 15까지는 1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 0, 1, 1, 1, 2, 1, 3, 1, 4, 1, 5으로

총 21개가 쓰였음을 알 수 있습니다.

자연수 N이 입력되면 1부터 N까지 각 숫자는 몇 개가 사용되었는지를 구하는 프로그램을 작

성하세요.

 

입력설명

첫 번째 줄에는 자연수 N(3<=N<=100,000,000)이 주어진다.

 

출력설명

첫 번째 줄에 숫자의 총개수를 출력한다.

 

입력예제 1

15

 

출력예제 1

21

 

// 나누기 10을 통해 자릿수를 추출하기엔 입력값이 너무크다.

// 1~9까진 한자리, 10~99까진 두자리, 100~999 까진 세자리, 이런식으로 증가한다는걸 이용하여 풀수있다.

 

#include <iostream>

using namespace std;

int main()
{
    int n, a = 1, b = 9, res =0 , sum = 0;
    cin >>n;
    while (sum+b<n)
    {
        res = res+(a*b);
        sum = sum+b;
        a++;
        b = b*10;
    }

    res += a*(n-sum);

    cout << res;

}

 

 

반응형

'Study' 카테고리의 다른 글

소수의 개수  (0) 2019.08.22
가장 많이 사용된 자릿수  (0) 2019.08.22
모두의 약수(제한시간 1초)  (0) 2019.08.13
영어단어 복구  (0) 2019.08.12
자릿수의 합  (0) 2019.08.12