정수론
-
[Algo Rhythm🕺💃] BOJ 17427 - 약수의 합 2Algo Rhythm🕺💃/BOJ 2021. 6. 24. 01:42
문제 분석 입력으로 주어지는 자연수를 n(1≤n≤106) 그리고 n보다 작거나 같은 자연수를 i라고 하자. 자연수 a가 자연수 b로 나누어 떨어진다면 즉, a가 b의 배수라면 b는 a의 약수이다. 따라서, 이 문제는 i에 속하는 한 자연수의 배수의 개수와 그 자연수를 곱한 값들을 더하여 g(n)=∑ni=1f(i)을 구하는 문제로 이해할 수 있다. 문제 풀이 i를 1부터 n까지 반복하여 i의 배수의 개수와 i를 곱한 값들을 더한다. 이때 i의 배수는 n/i개이다. 그리고 i>n/2일 때 n보다 작은 자연수들 중 i의 배수는 i 자기 자신뿐이다. 따라서 그 경우에는 i만 더한다. 복잡도 분석..