본문 바로가기

알고리즘&코테

[알고리즘] 등차수열의 합, 등비수열의 합, 시그마 계산

등차수열

$$ x=\frac{n(a+l)}{2}=\frac{n(2a+(n-1)d)}{2} $$

// 원하는 목표 n
// 초항 a
// 등차 d
// 마지막항 l
function 등차수열(n, a, d, l = 0) {
  if(l) return (n * (a + l)) / 2;
  return (n * (2 * a + (n - 1) * d)) / 2;
}

 

등비수열

$$ x=\frac{a(r^n-1)}{r-1} $$

$$ x=\frac{a(r^n-1)}{r-1}=\frac{a}{1-r} (단, -1 < r < 1, n=\infty) $$

function 등비수열(n, a, r) {
  if(n == Infinity) return a / (1 - r);
  return a * (r ** n - 1) / (r - 1);
}

 

시그마 합

$$ \sum_1^nk=\frac{n(n+1)}{2} $$
$$ \sum_1^nk^2=\frac{n(n+1)(2n+1)}{6} $$
$$ \sum_1^nk^3=(\frac{n(n+1)}{2})^2 $$