从此成了OI退役狗

说实话,当时NOIP比赛前就想写这篇,结果一直没有足够的动力和时间写,现在高考完了,也有了时间,就写一点东西,记录一下我的OI经历吧。

初入OI

高一时,我是信息技术课代表(当然没啥用),每次课上做题基本都最快完成,老师看我闲的没事在那里琢磨C++语言,就给我介绍了一下信息学奥赛,但同时也告诉我这条路要有足够的耐心而且要牺牲大多数假期甚至部分文化课学习时间,当时家长对此也比较担心,但由于我的坚持,最终我还是开始踏入了OI这个坑,开始了一年有余的填坑之路。结果由于学校忙着搞人事变动,没人管奥赛的事,直到高一暑假才真正开始集中的奥赛培训。之前一直都是自己有空看看入门书的入门章节,其实收获并不算大。

暑假的奥赛培训

第一节课是由LGA学长和SXY学姐带我们入门,当时学的还是Pascal。由于之前我自己看过一段时间的swift,而swift在行尾并不需要分号,所以入门时不打分号这个事情困扰了我好久,还好后来慢慢适应过来了。此外一开始的打字速度可以说是惨不忍睹,教练说打上几天代码就快了,也确实如此,几天之后,打字就由一指禅变成了二重奏。毕竟实用的技能学的最快。
关于Pascal,有优点也有缺点。优点呢,就是语法严谨,大部分错误在编译阶段就不会被忽略,甚至编译器提示基本就能解决大部分常见错误;此外有原生string类型,效率比STL string高了不少;尤其是Pascal代码易懂,接近伪代码。缺点也有,比如代码确实比较繁琐,C++中的{}在Pascal中等价表述是begin end,比较麻烦;此外for循环的条件限定过于死板,导致for和repeat、while无法完全等价的使用,而C++中的for循环则更为灵活,可以与while、do-while等价使用;另外Pascal缺少模板库的支持,而且OI中也不准使用除math库外的其他库文件,导致编码难度相对上升,而C++有完整的STL库支持,就连C也有qsort等常见函数可用。但是目前看来,Pascal以后可能会逐步退出OI圈,毕竟CCF计划在将来NOIP踢出Pascal和同样倒霉的C语言。Pascal可能真的只能在教学领域及某些特定领域使用了。(讽刺的是DEV-CPP是用Pascal编写的,而现在不使用Linux的考区还在用)
一开始写的代码基本停留在解决小学问题的难度上,比如返回最大值、返回最小值、求个最大公约数等等,还有个神题“校门外的树”,当时用暴力解决,后来用线段树解决。当时还不太会数组(array)的操作,结果一个猴子选大王硬是写了两天,当时就想要一个可以从中间删除某个特定元素的数组,结果很久之后发现STL vector就是我想要的那个数组

陈国凯oi历程的更多相关文章

  1. NOI2018游记&我的OI历程

    day1 今天是报到日,坐着早上9点的飞机到了长沙,午饭时间到达雅礼洋湖. 宿舍还是一模一样,虽然是在女生宿舍. wifi信号还是一样的德行,刻意避开了宿舍内,只好把手机放在窗台上开热点. 饭菜还是如 ...

  2. 日记——OI历程

    学OI也一年多了(2015.12-),一直没学出个像样的东西.相比dalao们,我还是弱爆了. ljj,qyf,yyf三位三区dalao. xxy,myj两位三区学长dalao. 稍微总结一下前一段时 ...

  3. OI历程日常

    之前的一直没来的及记录,表示从今往后连载 10.29 蒟蒻正在紧张的备战NOIP 整改了一下faebdc学长的模拟题,T1直接可以暴力破解,T2二分,O(nlog^2n)开始二分写残了,调了半天唉,现 ...

  4. 2018-2019-2 网络对抗week1 Kali安装 20165333陈国超

    Kali安装 安装过程是按照网上的教程装的,链接点击[https://blog.csdn.net/KNIGH_YUN/article/details/79949512] 安装成功的截图 主要说一下安装 ...

  5. presistence

    每一个神都是从弱到强的,像继科,在2011年之前,人很浮躁,球不稳,只是偶尔打出高质量而已:在输了无数场球之后,球厚了,人也定了(刘国梁评价),才抓住的机会成就了最快大满贯,并且创造了之后的辉煌,继科 ...

  6. Lemon 评测软件用法

    Lemon 评测软件用法(陈国凯手把手教的) MYL学妹提供的软件,感谢. 编译器添加向导->预制编译器配置->g++: C:\Program Files\Dev-Cpp\MinGW64\ ...

  7. OI生涯回顾

    OI回忆录只是一个预告,估计等2020高考结束才放出来吧. 先写一下自己简单的OI历程吧: 小升初刚起步 初一 第一次比赛,NOIP PJ组215分,踩线1=,全省rk86,全国rk677(毕竟AH ...

  8. 我的$OI$

    我只是懒得写日记啦\(\color{pink}{qwq}\) //11月8日 啊--终于要\(NOIp\)了,为此期盼了好久.紧张了好久的我,不知道会迎来怎样的结果. 我只知道这段回忆是值得保留封存的 ...

  9. oi回忆录

    堆在一起写成流水账好了,算是记录一下自己的oi历程.  [伊始] 一直到高中以前,我从来没有接触过任何oi相关的东西. 直到初三的那个暑假,在去金中报名的时候,报名表上面有一栏要填暑假想参加的夏令营. ...

随机推荐

  1. Flex布局和Bootstrap布局两者的比较

    在Bootstrap中采用12栅格的布局,12份随意分配,但是不能解决5等分,7等分的问题.所以flex布局来协助. bootstrap的布局方式 <div class="row&qu ...

  2. MySQL 误操作后数据恢复(update,delete忘加where条件)【转】

    在数据库日常维护中,开发人员是最让人头痛的,很多时候都会由于SQL语句 写的有问题导致服务器出问题,导致资源耗尽.最危险的操作就是在做DML操作的时候忘加where条件,导致全表更新,这是作为运维或者 ...

  3. C++11 并发指南一(C++11 多线程初探)

    引言 C++11 自2011年发布以来已经快两年了,之前一直没怎么关注,直到最近几个月才看了一些 C++11 的新特性,今后几篇博客我都会写一些关于 C++11 的特性,算是记录一下自己学到的东西吧, ...

  4. java注解优缺点

    优点: 1.节省配置,减少配置文件大小 2.编译时即可查看正确与否,提高效率 缺点: 1.增加了程序的耦合性,因为注解保存在class文件中,而且比较分散 2.若要对配置进行修改需要重新编译 @aut ...

  5. 故障 -> nginx启动失败

    描述:在用saltstack给 minion 安装 nginx 服务 时 提示 nginx 服务下载成功,但是启动失败. ---------- ID: nginx-systemctl Function ...

  6. MyEclipse中将项目的编码从默认GBK改变为默认UTF-8

  7. pandas使用lambda判断元素是否为空或者None

    df2a_tp2 = df2a[df2a['combineIdentifyCode'].map(lambda x: len(str(x).strip())>0)].copy() #识别出合单的订 ...

  8. Mac安装Homebrew记录

    在终端输入: ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install) ...

  9. Range:HTML5中的新型Input类型

    <div style="width:100%; height:100%; position:fixed; top:0; left:0; z-index:100000; backgrou ...

  10. Spark的HA部署

    一.安装JDK.Scala 二.安装zookeeper 三.安装Hadoop 四.安装Spark 1.修改spark/conf/spark-env.sh export JAVA_HOME=/usr/j ...