時間限制 2000 ms ・ 記憶體限制 256 MB
題目描述
費波那契數列從 0、1 開始,每一項是前兩項的和。以 1、2、3、5、8、13、… 作為各位的權重,任何正整數都可以唯一寫成若干個不相鄰費波那契數的和。
將使用的權重記為 1、未使用的記為 0,並由大到小排列,就得到費波那契進位表示。不可有前導 0,也不可出現連續兩個 1。例如 17 = 13 + 3 + 1,因此表示為 100101。
請將十進位整數轉成此表示法。
輸入格式
第一行是資料筆數 N,1 ≤ N ≤ 500。接下來 N 行各有一個小於 100000000 的正整數。
輸出格式
每筆輸出一行 DEC = FIB (fib),其中 DEC 是原本的十進位整數,FIB 是其費波那契進位表示。
題目來源:UVa 948 — Fibonaccimal Base。 原題:https://onlinejudge.org/external/9/948.pdf
範例測資
範例輸入 1
10 1 2 3 4 5 6 7 8 9 10
範例輸出 1
1 = 1 (fib) 2 = 10 (fib) 3 = 100 (fib) 4 = 101 (fib) 5 = 1000 (fib) 6 = 1001 (fib) 7 = 1010 (fib) 8 = 10000 (fib) 9 = 10001 (fib) 10 = 10010 (fib)
請先登入後再提交程式碼
討論與題解
載入討論區…