题解 | #贪吃牛#

贪吃牛

https://www.nowcoder.com/practice/ae6261c872724fda8913b0377e85f6ab

知识点

动态规划

分析

如果N=1,共有1种方案;

如果N=2,共有2种方案;

如果N=3,可以吃1,剩2,也可以吃2,剩下1,所以共有2+1=3种方案;

如果N=4,则吃1,剩3,也可以吃2,剩2,共有3+2=5种方案。

则f[i] = f[i - 1] + f[i - 2]

那么使用动态规划就可以解决了。

编程语言

C++

完整代码

int eatGrass(int n) {
        int f[10010] = {0};
        f[1] = 1; f[2] = 2;
        for (int i = 3; i <= n; i++){
            f[i] = f[i - 1] + f[i - 2];
        }
        return f[n];
    }

全部评论

相关推荐

白火同学:先说结论,对于一份实习简历来说,整体还是挺不错的,技术深度和广度都到位,找到一份中小厂的实习没啥问题。 再说说能优化的点吧。 1、量化结果,项目中很多工作量化一下结果给面试官的感受会更直观一些,也能体现你对应用该项技术的理解(在众多技术为什么要用它,运行性能或者说开发效率往往是一大考虑指标;而不是说大家做这种功能都用它,所以我用它)。 2、突出亮点,项目中可以从“工作职责”择一些“个人亮点”另写一块,优先去写开发过程中遇到的xx问题,使用xx技术达到xx效果,针对性去写一些疑杂难的功能,能带出你个人思考和解决的过程。
点赞 评论 收藏
分享
牛客52811839...:实习要写出来业务和产出,你这写的像流水账没人看。项目经历也没有,换个极简简历试试
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务