이 문제에서 우리는 처음 n개의 자연수의 제곱의 합을 구하는 방법을 볼 것입니다. 여기서 우리는 1에서 n까지 실행되는 하나의 for 루프를 사용하고 있습니다. 각 단계에서 항의 제곱을 계산한 다음 합계에 더합니다. 이 프로그램은 완료하는 데 O(n) 시간이 걸립니다. 그러나 이것을 O(1) 또는 일정한 시간으로 풀고 싶다면 이 급수 공식을 사용할 수 있습니다 -
알고리즘
사각형(n)
begin sum := 0 for i in range 1 to n, do sum := sum + i^2 done return sum end
예시
#include<iostream> using namespace std; long square_sum_n_natural(int n) { long sum = 0; for (int i = 1; i <= n; i++) { sum += i * i; //square i and add it with sum } return sum; } main() { int n; cout << "Enter N: "; cin >> n; cout << "Result is: " << square_sum_n_natural(n); }
출력
Enter N: 4 Result is: 30