[ Algorithm ]/ [ BOJ ]
BOJ_1748 [ 수 이어 쓰기1 ]
라이언
2018. 11. 11. 18:07
반응형
문제
https://www.acmicpc.net/problem/1748
문제 해결 방법
자리수 마다 필요한 자리수 개수를 구해서 입력 받은 수에 이전 자리수 까지 모두 더한 뒤
(입력받은 수 - 시작 자리수의 처음 수) * (시작 자리수) 를 더해주면 문제를 해결 하실 수 있습니다.
예제를 통해서 확인해 보겠습니다.
입력 받은 수가 120이라면 세자리 수 이므로 1의자리 , 10의 자리 수의 개수를 모두 더합니다.
9 + 180 이므로 189가 됩니다.
그리고 세자리수의 처음 수는 100이므로
입력 받은 수 120 에서 100을 빼면 20이지만 100에서 120까지에 총 개수는 21이므로 +1을 해주어야 됩니다.
그리고 나온 값에 입력받은 수에 자리수를 곱해주고 더해주면 원하는 값을 얻을 수 있습니다.
21*3 = 63+189=252
소스 코드
https://github.com/jokerKwu/BOJ_Algorithm/blob/master/Brute%20force/BOJ_1748.cpp
반응형