문제

  • n 번째 짝수를 반환한다.
  • 입력에 0은 제외한다.

풀이 01

function nthEven(n) {
  let result = 0;

  for (let i = 1; i < n; i++) {
    result += 2;
  }
  return result;
}

nthEven(1);    // 0
nthEven(2);    // 2 (0, 2)
nthEven(3);    // 4 (0, 2, 4)
nthEven(100);  // 198 (0, 2, 4, ... 196, 198)

비효율적이다. 시간이 오래 걸린다.

풀이 02

function nthEven(n) {
  return n * 2 - 2;
}

nthEven(1);    // 0
nthEven(2);    // 2 (0, 2)
nthEven(3);    // 4 (0, 2, 4)
nthEven(100);  // 198 (0, 2, 4, ... 196, 198)