摘要:
哎,说实话Hanio塔这样的题,要是思路不对,真是干着急啊!就是无法ac,哎!对了,此题的解题思路可以参考杭电2064,依然是递推的问题!!对比杭电2064,此题附加了一个规则,就是允许最大的一个盘子放到其他盘子的的上面,首先这样考虑:1)把最左边的1号杆上的n-1个盘子移到2号中间的杆上; //移动次数f(n-1)2)把最左边第n个盘子(即最大的盘子从1号移动到2号,再从2号移动到3号);//移动次数23)再把2号杆上的n-1个盘子移动到3号杆上;//移动次数f(n-1);总的移动次数等于f(n-1)+f(n-1)+2=2*f(n-1)+2;接着,对于n前面的n-1个盘子的移动就符合以前的规 阅读全文
posted @ 2012-10-23 21:22
@ 小浩
阅读(324)
评论(0)
推荐(0)
摘要:
简单题,直接ac!!#include<iostream>using namespace std;int main(){ int n,i,a,b,k=0;long long A[100];cin>>n; getchar();while(k<n){ cin>>a>>b;A[a]=0;A[a+1]=1;A[a+2]=2;for(i=a+3;i<=b;i++)A[i]=A[i-1]+A[i-2];cout<<A[b]<<endl;k++;}return 0;} 阅读全文
posted @ 2012-10-23 09:44
@ 小浩
阅读(178)
评论(0)
推荐(0)
浙公网安备 33010602011771号