reborn_tou 2016-10-09 11:25 采纳率: 50%
浏览 1301
已采纳

C语言小蜜蜂问题,自己在编译器可行,但是提交超时,求问如何改?

图片说明#include
#include

int num(int count){

if(count>2)
    return (num(count-1)+num(count-2));
else
    return count;

}

int main() {

int N,a[50],b[50],count;
int i=0,j=0,roads;

scanf("%d",&N);
//INPUT
for(i=0;i<N;i++){
    scanf("%d%d",&a[i],&b[i]);
    if( 0<a[i] && a[i]<b[i] && b[i]<50)
        continue;
    else
        i--;
}
//OUTPUT
for(j=0;j<N;j++){
    count=b[j]-a[j];
    roads=num(count);
    printf("%d\n",roads);
}
return 0;

}

  • 写回答

2条回答 默认 最新

  • 祈祷爱绝缘 2016-10-10 08:44
    关注

    如苏小喵的给的那个网址。

    如果a-b的绝对值相同的话,线路数是相同的,类似是一种情况

    如果绝对值是1路线数是1 如果是2 路线数是2 如果是3 路线数是3.....

    有两个位置可以走到最后一个位置,那么走到最后一个位置的路线数就是走到这两个位置的路线数的和,

    递推过程出来了,递推公式很容易写出:

    F(i) = F(i-1) + F(i-2)

    这不就是一个斐波那契数列么?

    先提前做好一个斐波那契数列的数组F,然后直接输出F[b-a]就OK了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 该网站用的是什么程序模版
  • ¥15 verilog modelsim仿真
  • ¥15 Power BI 里面 帕累托图突出显示前20
  • ¥50 用预估矫正法,分数阶微分方程组传染病的最优控制代码怎么写
  • ¥15 画个数据流程图,手画也行
  • ¥60 AS自带模拟器AVD Root 和 Xposed安装
  • ¥30 哪位搞Android的编程师可以帮我远程一下,悬赏30元
  • ¥15 solidity部署上合约,可以mint,也继承接口了,在区块链也不显示代币名字
  • ¥15 讨论 博士论文交互项怎么讨论?
  • ¥50 在集成BiLSTM和GCN模型时遇到了问题