主题:斐波那契数列 和Runtime Error
_超.C
[专家分:10] 发布于 2010-12-05 17:04:00
这是我在我们学校OJ上做的一个题目
斐波那契数列是如下的一个数列,0,1,1,2,3,5……,其通项公式为F(n)=F(n-1)+F(n-2),(n>=2) ,其中F(0)=0,F(1)=1,你的任务很简单,判定斐波契数列的第K项是否为偶数,如果是输出YES,否则输出NO
Input第一行,T,表示有T个测试样例。
接下来T行,每行一个数据K(0<=K<=10^10000),表示要判定的是哪一项。Output如果第K项是偶数,输出YES,否则输出NO。
这是我的代码:
#include <stdio.h>
int GetFibona(int n);
void main()
{
int i=0,k[10],n,tem[10];
scanf("%d",&n);
while(i<n){scanf("%d",&k[i]) ;i++;}
for(i=0;i<n;++i)
{tem[i]=GetFibona(k[i]);
if(tem[i]%2==0)printf("YES\n");
else printf("NO\n");
}
}
int GetFibona(int n)
{
if(n==1)return 0;
else if(n==2) return 1;
else return GetFibona(n-1)+GetFibona(n-2);
}
提交后却显示Restricted Function 这是为什么了?
那位大虾HELP ME 指出问题后优化一下
回复列表 (共5个回复)
沙发
cfj469933485 [专家分:950] 发布于 2010-12-05 17:47:00
//楼主的代码没有错哈,不知道楼主用的是什么编译器,我的是VC6.0
//以下是我在楼主的代码基础上,加上几句提示语,不然都不知道一个黑屏出来,什么都没提示,都
//不知道要输入什么。
#include <stdio.h>
int GetFibona(int n);
void main()
{
int i=0, k[10], n, tem[10];
printf("需要测试的数据个数:");
scanf("%d",&n);
while(i < n)
{
printf("第%d个数据:", i + 1);
scanf("%d", &k[i]);
i++;
}
printf("\n");
for(i=0; i<n; ++i)
{
tem[i] = GetFibona(k[i]);
printf("第%d个数据:%d\t", i + 1, k[i]);
printf("斐波那契的值为:%d\t", tem[i]);
if(tem[i] % 2 == 0) printf("YES\n");
else printf("NO\n");
printf("\n");
}
}
int GetFibona(int n)
{
if(n == 1)return 0;
else if(n == 2) return 1;
else return GetFibona(n-1) + GetFibona(n-2);
}
板凳
x66f [专家分:10] 发布于 2010-12-06 19:09:00
可能是堆栈溢出了吧,别用系统分配的数组,自己在堆上申请一段内存存储试试
3 楼
_超.C [专家分:10] 发布于 2010-12-08 20:58:00
2楼能讲讲不?关于Restricted Function
4 楼
vrgdfdsg [专家分:0] 发布于 2010-12-10 11:07:00
Always set [url=http://www.mmopowerlevel.net]wow power leveling[/url] auctions for 24 hours and put a buyout price about 4-6x the value to an NPC vendor
(again check the Auction House current prices so you dont over or under value your items) ... the [url=http://www.mogxe.com/PowerLevel.php?gid=1]wow power
leveling[/url] buyout price allows impatient bidders a way of getting their items quickly - and your money faster.
Mail your major items to your mule for [url=http://www.mmopowerlevel.net/powerlist.php?fid=688]wow power leveling[/url] Auction House Placement, dump the
rest of the garbage ontot he NPC vendor.
Each stack will sell at Auction House [url=http://www.mmopowerlevel.net/buy.php]world of warcraft gold[/url] for 5-10s per stack easily and up to 20s per
stack if the demand is right, low level "green" items 5-10s each.
My first (and still main) toon [url=http://www.mmopowerlevel.net/buy.php]best wow gold[/url] never got anywhere near this cash return so early (mage, miner
engineer) ... my current level 10 gatherer is getting 1g per 2 hours of game time (mixing it up with questing and general fun) .... a concentrated
[url=http://www.mmopowerlevel.net/buy.php]cheapest wow gold[/url] effort should nett close to 1g per hour - a huge return for a low level character me
thinks.
5 楼
eastcowboy [专家分:25370] 发布于 2010-12-10 23:35:00
Restricted Function
这个可能是说你用了某个函数,但这个函数却是你们学校OJ所禁止使用的。(比如qsort之类,一般都可能会禁用)
关于这个,你可以看看学校OJ的介绍。
我来回复