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

33984번 - 피보나치 동전

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

문제

준혁이는 피보나치 동전을 화폐로 사용하는 피보나치 마을에서 살고 있다. $i$번째 피보나치 동전의 가치는$F_i$ 이다.

$F_i$는 피보나치 수열의 $i$번째 수를 의미한다. $F_1 = 1, F_2 = 1$ 이고, $i \geq 3$에서 $F_i = F_{i-1} + F_{i-2}$로 정의된다.

준혁이의 $i$일차의 재산은 $M_i$로 나타낸다. 준혁이는 0ドル$일차에 재산이 없으므로 $M_0 = 0$이다. 준혁이는 1ドル$일차부터 $N$일차까지 $N$일간 정당한 노동을 하여 $i$일차에 일당으로 $A_i$번째 피보나치 동전 1ドル$개를 받게 된다. 즉 $M_i = M_{i-1}+F_{A_i}$이다.

준혁이는 매일 밤, 자신의 재산을 최소 개수의 피보나치 동전으로 표현할 때 필요한 동전의 수를 알고 싶어한다. 1ドル$일차 부터 $N$일차 까지, 재산 $M_i$를 피보나치 동전들의 합으로 표현할 때 필요한 최소 동전 개수 $C_i$를 구하여라.

입력

첫째 줄에 $N$이 주어진다. $(1 \leq N \leq 250,000円)$

둘째 줄에 $A_1, A_2, \cdots, A_N$이 공백으로 구분되어 주어진다. $(1 \leq A_i \leq 1,000円,000円)$

출력

첫째 줄에 $C_1, C_2, \cdots, C_N$을 공백으로 구분하여 출력한다.

제한

예제 입력 1

3
1 2 5

예제 출력 1

1 1 2

$M_1 = 1$이다. 1ドル$번째 피보나치 동전 하나면 1ドル$을 만들 수 있다.

$M_2 = 2$이다. 3ドル$번째 동전 하나면 2ドル$를 만들 수 있다.

$M_3 = 7$이다. 3ドル$번째 동전 하나와 5ドル$번째 동전 하나가 있으면 7ドル$을 만들 수 있다.

예제 입력 2

5
5 10 15 20 25

예제 출력 2

1 2 3 4 5

힌트

출처

University > 한양대학교 > 2025 한양대학교 ALOHA 벚꽃컵 > Div. 1 A번

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

출처

대학교 대회

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

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