1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > java 实现斐波切纳数列 求解这个算斐波切纳兔子有关问题的算法错哪了(和stl迭代器

java 实现斐波切纳数列 求解这个算斐波切纳兔子有关问题的算法错哪了(和stl迭代器

时间:2023-04-11 18:49:57

相关推荐

java 实现斐波切纳数列 求解这个算斐波切纳兔子有关问题的算法错哪了(和stl迭代器

求解这个算斐波切纳兔子问题的算法哪里错了(和stl迭代器貌似有点关系)

#include

#include

#include

#defineBORN_AGE3

#defineDIE_AGE12

usingnamespacestd;

boolcanborn(intage);

boolshalldie(intage);

intmain()

{

intmonth=0,count=1;

do

{

cin>>month;

}

while(month<=0);

vectorrabbits;

rabbits.clear();

rabbits.push_back(1);

count=rabbits.size();

for(inti=1;i<=month;i++)

{

//handleborn

count=rabbits.size();

for(intii=0;ii

{

if(canborn(rabbits.at(ii)))

{

rabbits.push_back(1);

}

}

//handlegrow

count=rabbits.size();

for(intii=0;ii

//handledeath

count=rabbits.size();

for(intii=0;ii

{

if(shalldie(rabbits.at(ii)))

{

rabbits.at(ii)=*(rabbits.end());

rabbits.pop_back();

}

}

}

cout<

system("pause");

return0;

}

boolshalldie(intage)

{

if(age>=DIE_AGE)returntrue;

returnfalse;

}

boolcanborn(intage)

{

if(age>=BORN_AGE)returntrue;

returnfalse;

}

就是输入11时(兔子祖先的寿命将达到12个月,就是说它的死期到了)

然后就出问题了。。貌似是溢出(好吧相当于野指针)

算法

vector

------解决方案--------------------

*(rabbits.end())有问题,end迭代器不能解引用的。

java 实现斐波切纳数列 求解这个算斐波切纳兔子有关问题的算法错哪了(和stl迭代器貌似有点关系)...

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。