백준 1081 합
·
알고리즘/문제
문제는 간단하다.두 정수 L과 U가 주어지고, L 이상 U이하인 모든 정수의 각 자리의 합을 구하면 된다. 다만 문제를 푸는 알고리즘을 생각하기까지의 과정은 간단하지 않았다.ㅜㅜ첫번째로 생각했던 과정은 다음과 같다. 일단 0-9까지의 합이 45이고, 10, 100, 1000처럼 10의 제곱근 단위로 나누어 이를 이용해야 한다는 생각까진 들었다.다만 이걸 어떻게 이용해야하나? 하는 고민이 많았다.예시로 1129와 2712의 정수가 주어졌다고 가정해보자. 제일 앞자리 1은 뒤에 있는 숫자의 개수만큼 나오는 개수가 달라질거고, 그건 각 자리가 마찬가지다.두 정수의 차를 구해서 서로에게 영향이 없는 (eg. 102와 493일때 200-400까지는 영향이 없는 것을 의미) 수를 구해서 그만큼은 정해진 값을 더하고..