HACKER
TALK
Home
Channels
beta
Bookmarks
Messages
Notifications
Sign In
疯魔
疯魔
疯魔
疯魔
Joined 3 years ago
0 Following0 Followers
JulyAugSeptOctNovDecJanFebMarAprMayJune
PostsCommentsChannels
疯魔
疯魔
·3 years ago

it.begin()做完自减操作之后,就是it.end()

所以你这个代码再自减一次也是可以的。

疯魔
疯魔
·3 years ago

实际上就是it--之后,指向的迭代器位置是,最后一个元素之后,插入的时候是没问题的,但是删除的时候就不行了,如果想要删除最后一个元素应该改成

it=l.end();

l.erase(--it);

这样就可以了。

疯魔
疯魔
·3 years ago

不会编辑C++代码 汗

疯魔
疯魔
·3 years ago

可以通过一个数组存递归已经算出来的数字

long long ans[1000];
long long Frog(int x) {
    long long &ans=a[x];
    if(ans!=0) return ans;
    if(x==1||!x) return ans=1;
    return ans=Frog(x-1)+Frog(x-2);
}

本质出现问题的原因就是递归次数过多,很多计算都是重复的,所以加个数组记忆一下就行了

Terms of ServicePrivacy PolicyCookie PolicyMarkdown SyntaxUser PointsUser Feedback© 2025 Shware Inc.