【杭電-oj】-1865-1sting(大數斐波那契數列)
1sting
Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 5021 Accepted Submission(s): 1864
Problem Description You will be given a string which only contains ‘1’; You can merge two adjacent ‘1’ to be ‘2’, or leave the ‘1’ there. Surly, you may get many different results. For example, given 1111 , you can get 1111, 121, 112,211,22. Now, your work is to find the total number of result you can get.
Input The first line is a number n refers to the number of test cases. Then n lines follows, each line has a string made up of ‘1’ . The maximum length of the sequence is 200.
Output The output contain n lines, each line output the number of result you can get .
Sample Input 3 1 11 11111
Sample Output 1 2 8
Author z.jt 這道題也是斐波那契數列,只是需要用字串把1的個數轉換為n而已。
#include<cstdio> #include<cstring> int main() { int t,l,k; char a[201]; int f[1001][211]={0}; //全部初始化為0 f[1][1]=1; f[2][1]=2; for(int i=3;i<=1000;i++) { for(int j=1;j<=210;j++) //二維陣列,i表示第幾個數,j表示這個數的第幾位, { // 然後對j進行類似大數相加的運算 f[i][j]+=f[i-1][j]+f[i-2][j]; if(f[i][j]>9) { f[i][j]-=10; f[i][j+1]++; } } } scanf("%d",&t); while(t--) { scanf("%s",a); l=strlen(a); k=100; for( ;f[l][k]==0;k--); //開始全部初始化為零,直到遇到一個f[n][k]!=0,此時跳出迴圈,開始輸出 for( ;k>=1;k--) //這種倒著輸出不同於之前的倒著輸出,此時不用考慮是否進位,只要不超出範圍即可 printf("%d",f[l][k]); printf("\n"); } return 0; }
相關推薦
【杭電-oj】-1865-1sting(大數斐波那契數列)
1sting Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 5021 Accepted Submiss
【劍指offer】面試題9:斐波那契數列
題目 寫一個函式,輸入n, 求斐波那契數列的第n項。 遞迴 問題規模為: T(n)=T(n−1)+T(n−2) 如果我們估計一下,讓 T(n−1)=T(n−2) 那麼T(n)=2T(n−1) 那麼O(n)=2n 簡介而不高效 long l
1005 Number Sequence(廣義斐波那契數列)
Problem Description A number sequence is defined as follows: f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7. G
藍橋杯第四屆 黃金連分數(大數 斐波那契數列與黃金分割)
題目描述 標題: 黃金連分數 黃金分割數0.61803... 是個無理數,這個常數十分重要,在許多工程問題中會出現。有時需要把這個數字求得很精確。 對於某些精密工程,常數的精度很重要。也許你聽說過哈
【杭電-oj】-1008-Elevator(電梯)
Problem Description The highest building in our city has only one elevator. A request list is made up with N positive numbers. The num
【CF446C】DZY Loves Fibonacci Numbers (線段樹 + 斐波那契數列)
nac ++ return isp mat span 先來 sum scrip Description ? 看題戳我 給你一個序列,要求支持區間加斐波那契數列和區間求和。\(~n \leq 3 \times 10 ^ 5, ~fib_1 = fib_2 = 1~\). So
【TOJ 3600】Fibonacci II (對數+斐波那契通項式)
sta jpg 我們 文件 panel 這一 spa eof clas 描述 2007年到來了。經過2006年一年的修煉,數學神童zouyu終於把0到100000000的Fibonacci數列(f[0]=0,f[1]=1;f[i] = f[i-1]+f[i-2](i&
Java 兔子問題(斐波那契數列)擴展篇
aik 第一個 truct func main target htm bre trace Java 兔子問題(斐波那契數列)擴展篇 斐波那契數列指的是這樣一個數列 0, 1, 1, 2,3, 5, 8, 13, 21, 34, 55, 89, 144, ...對於這個
找一找(斐波那契數列)
數列 || amp question 滿足 mil 一個 輸出 family 題目要求:給定n個正整數,請找出其中有多少個數x滿足:在這n個數中存在數y,使y=kx,其中k為大於1的整數 輸入描述 : 第一行輸入一個n,接下來一行輸入n個正整數ai 輸出描述:輸出符合條件個
Java中的不死神兔(斐波那契數列)
三種方法實現例項: package test17_digui; import java.util.Scanner; /* * 題目:有一對兔子,從出生後第3個月起每個月都生1對兔子,小兔子第三個月後也可以生一對兔子, * 假如兔子不死,在指定月份時刻一共可以有多少對兔子 *
java:遞迴練習(斐波那契數列)
package com.heima.test; public class Test5 { public static void main(String[] args) { demo1(); System.out.println(fun(8)); } //使用陣列求斐波那契數列
兔子的繁殖問題(斐波那契數列)
Problem A: 兔子的繁殖問題 假設一對兔子每月能生一對小兔(一雌一雄),每對小兔出生後的下一個月是沒有繁殖能力的,至出生後的第三個月開始又可以每月生一對小兔,問從一對剛出生的小兔開始,經過若干個月後一共有多少兔子(假設在此過程中兔子沒有死亡)? 這個問題
codeforces316E3 Summer Homework(線段樹,斐波那契數列)
pan hang 題目 using queue main scanf spa 維護 題目大意 給定一個n個數的數列,m個操作,有三種操作: \(1\ x\ v\) 將\(a_x\)的值修改成v \(2\ l\ r\\) 求 \(\sum_{i=l}^r x_i*f_{i-
矩陣快速冪(以斐波那契數列為例)
小 M 玩數列 【問題描述】 小 W 發現了一個神奇的數列: () = ( − 1) + ( − 2) { ≥ 3, (1) = 1, (2) = 1} ,這就是著名的 Fibonacci Se
再刷PAT系列~ 1008 童年生活二三事(斐波那契數列)
題目描述 NowCoder小時候走路喜歡蹦蹦跳跳,他最喜歡在樓梯上跳來跳去。 但年幼的他一次只能走上一階或者一下子蹦上兩階。 現在一共有N階臺階,請你計算一下NowCoder從第0階到第N階共有幾
極值問題-(斐波那契數列)
已知m、n為整數,且滿足下列兩個條件: ① m、n∈{1,2,…,k},即1≤m,n≤k ②(n2-m*n-m2)2=1 你的任務是:程式設計輸入正整數k(1≤k≤109),求一組滿足上述兩個條件的m、n,並且使m2+n2的值最大。例如,從鍵盤輸入k=199
不死兔(斐波那契數列)
public static void main(String[] args) { /** * 需求:有一對兔子,從出生後第3個月起每個月都生一對兔子, * 小兔子長到第三個月後每個月又生一對兔子, * 假如兔子都不死,問第二十個月的兔子對數為多少? *
fibonacii數列(斐波那契數列)的遞迴實現及迴圈實現
public class Fibonacii { public static long fibo(int num){ //遞迴方法 if(num==1||num==2) //定義出口 return 1; return fibo(num-1)+fibo(
劍指Offer(java+第九題,斐波那契數列)
思路 如果直接寫遞迴函式,由於會出現很多重複計算,效率非常底,不採用。 要避免重複計算,採用從下往上計算,可以把計算過了的儲存起來,下次要計算時就不必重複計算了:先由f(0)和f(1)計算f(2),再由f(1)和f(2)計算f(3)……以此類推就行了,計算第n個時,只要儲存第n-1和
hdu 2046 骨牌鋪方格(遞推 斐波那契數列)
骨牌鋪方格 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) To