등차수열과 등비수열의 합

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

등차수열은 바로 앞 항에 일정한 수 dd를 더해서 다음 항을 만드는 수열이다.

a1+a2+a3++an=a1+(a1+d)+(a1+2d)++(a1+(n1)d)a_1 + a_2 + a_3 + \dots + a_n = a_1 + (a_1 + d) + (a_1 + 2d) + \dots + (a_1 + (n-1)d)

a1a_1부터 ana_n까지의 합은 다음과 같다.

Sn=n(2a1+(n1)d)2S_n = \frac{n(2a_1 + (n-1)d)}{2}

등비수열은 바로 앞 항에 일정한 수 rr를 곱해서 다음 항을 만드는 수열이다.

a1+a2+a3++an=a1+ra1+r2a1++rn1a1a_1 + a_2 + a_3 + \dots + a_n = a_1 + ra_1 + r^2 a_1 + \dots + r^{n-1} a_1

a1a_1부터 ana_n까지의 합은 다음과 같다.

Sn=a1rn1r1S_n = a_1 \frac{r^n - 1}{r - 1}

등차수열이거나 등비수열인 수열의 첫 세 항이 주어진다. 첫 NN개 항의 합을 구하시오. 첫 항의 번호는 1이고, 합에는 NN번째 항까지 포함한다.

입력

입력은 여러 개의 데이터 세트로 이루어지고, 각 데이터 세트는 두 줄이다. 첫째 줄에는 합을 구할 항의 개수 NN이 주어진다. 둘째 줄에는 수열의 첫 세 항이 공백으로 구분된 정수로 주어진다. 수열은 등차수열이거나 등비수열이다. NN이 0인 줄이 나오면 입력이 끝나고, 그 줄 뒤에는 수열 줄이 오지 않는다. 수열이 등비수열이면 공비 rr는 정수이다.

출력

각 데이터 세트마다 SnS_n을 한 줄에 하나씩 출력한다. 합은 64비트 정수 범위를 넘을 수 있다.

제한

  • 1N1001 \le N \le 100
  • 1a1,a2,a325001 \le a_1, a_2, a_3 \le 2500