위키피디아에서는 아래와 같이 정의하고 있다.수학에서 조화수열는 등차수열의 역수를 취하여 형성되는 수열이다.조화수열의 일반항은 $\frac{1}{a+kd}$와 같다. 프로그래밍 문제에서 이 수열 내림의 합을 구하는 문제가 나오기도 한다. 이때 그 합은 아래와 같이 표현가능하다.$$\sum_{i=1}^{n}{\lfloor \frac{n}{i} \rfloor}$$여기서 이 수열을 그냥 1부터 n까지 구하게 된다면 시간복잡도가 n이다. 이때 10000/1001의 내림과 10000/1111의 내림이 9로 동일한 것을 알 수 있다. 이 성질을 이용하면 시간 복잡도가 sqrt(n)이 된다.그렇다면 n/i의 내림과 n/j의 내림이 같으면서 가장 큰 j를 찾고 n/i의 내림과 그 범위 (j-i+1)를 곱하면 되고 이 것..