Logo
(追記) (追記ここまで)

34017번 - 수열과 병규

시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 512 MB261604321.287%

문제

특이한 수열을 만드는 게 취미인 병규는 다음과 같은 수열 $a$를 만들었다.

$a_1 = 1, a_2 = 2$이며 모든 양의 정수 $n$에 대해 아래 식을 만족한다.

  • $a_{3n} = 2a_n + 2a_{n+1} + 1$
  • $a_{3n+1} = 2a_{n+2} - 1$
  • $a_{3n+2} = -2a_{n+1} - 2a_{n+2} + 2$

$S_n = a_1 + a_2 + \cdots + a_n$이라 할 때, 병규는 $S_n$을 빠르게 구하는 방법을 찾고 싶다. 병규를 위해 이 문제를 풀어주자.

입력

첫째 줄에 쿼리의 개수 $Q$가 주어진다. $(1 \leq Q \leq 200,000円)$

둘째 줄부터 $Q$개의 줄에 걸쳐 $n$이 주어진다. $(1 \leq n \leq 10^{18})$

입력으로 주어지는 모든 수는 정수이다.

출력

각 줄에 $S_n$을 한 줄에 하나씩 순서대로 출력한다.

제한

예제 입력 1

3
1
2
3

예제 출력 1

1
3
10

$a_3 = 2a_1 + 2a_2 + 1 = 7$이다. 즉,

$S_1 = a_1 = 1$

$S_2 = a_1 + a_2 = 3$

$S_3 = a_1 + a_2 + a_3 = 10$을 각각 출력한다.

예제 입력 2

1
5

예제 출력 2

7

힌트

출처

University > 성균관대학교 > 2025 SKKU 프로그래밍 대회 I번

(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /