斐波那契数列二(马蹄集)

斐波那契数列二
难度:白银
时间限制:1秒
巴占用内存:64M
判断数字N(N<29)是否为斐波那契数列中出现的数,输出YES或者NO。
格式
输入格式:输入整型
输出格式:输出YES或者NO

//
// Created by abner on 2022/11/5.
//
#include <bits/stdc++.h>
using namespace std;
int main()
{
    int f1=1,f2=1,fn=1;//迭代变量
    int N;
    cin>>N;
    for(int i=1;fn<=N;i++) {//迭代次数
        if (fn == N) {
            cout << "YES";
            return 0;
        }
        fn = f1 + f2;//迭代关系式
        f1 = f2;
        f2 = fn;//f1和f2迭代前进
    }
        cout<<"NO";
        return 0;
    }

如果只是语法,一个人,或者天赋极好(虽然我没见过),或者有其他语言的基础,是完全可以做到的。

但是,请永远记住,学习一门语言,不是为了考试,而是为了使用,而只要开始使用,就不再是语言本身的事了。

举个例子,如果你学习了c++基本语法之后,然后想要用它写一个windows桌面程序,你该怎么做?

即使你的程序只是一个最简单的计算器,没有数据库,没有io访问,你总的有一个窗口,有一些按钮吧。但是,要做到这一点并不简单!

最基本的,你要了解windows的消息机制,能够对事件进行响应,知道对应的api位于那些系统动态库…

如果你不想直接调用wibdows API,你还可以使用其他框架(例如MFC等),这又是另一个广大的世界了。

而api之下,框架之下,本质上是对操作系统,对架构和设计的认知,这些东西又会涉及更多的东西。

因此,所谓掌握一门语言,语法层面占比是非常少的,其他的都包含在这门语言巨大的生态之中!

更不用说,对一门语言,按我的经历,即使只在语法层面,要想正真掌握,也只有在反复的实践中才能实现。

就好像c/c++的指针,若非真正进行过开发,经历过相关的“爱恨情仇”,你就不会对它有刻骨的认识。



作者:沈世钧
链接:https://www.zhihu.com/question/423236529/answer/1503471605
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值