陈国凯oi历程
从此成了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历程的更多相关文章
- NOI2018游记&我的OI历程
day1 今天是报到日,坐着早上9点的飞机到了长沙,午饭时间到达雅礼洋湖. 宿舍还是一模一样,虽然是在女生宿舍. wifi信号还是一样的德行,刻意避开了宿舍内,只好把手机放在窗台上开热点. 饭菜还是如 ...
- 日记——OI历程
学OI也一年多了(2015.12-),一直没学出个像样的东西.相比dalao们,我还是弱爆了. ljj,qyf,yyf三位三区dalao. xxy,myj两位三区学长dalao. 稍微总结一下前一段时 ...
- OI历程日常
之前的一直没来的及记录,表示从今往后连载 10.29 蒟蒻正在紧张的备战NOIP 整改了一下faebdc学长的模拟题,T1直接可以暴力破解,T2二分,O(nlog^2n)开始二分写残了,调了半天唉,现 ...
- 2018-2019-2 网络对抗week1 Kali安装 20165333陈国超
Kali安装 安装过程是按照网上的教程装的,链接点击[https://blog.csdn.net/KNIGH_YUN/article/details/79949512] 安装成功的截图 主要说一下安装 ...
- presistence
每一个神都是从弱到强的,像继科,在2011年之前,人很浮躁,球不稳,只是偶尔打出高质量而已:在输了无数场球之后,球厚了,人也定了(刘国梁评价),才抓住的机会成就了最快大满贯,并且创造了之后的辉煌,继科 ...
- Lemon 评测软件用法
Lemon 评测软件用法(陈国凯手把手教的) MYL学妹提供的软件,感谢. 编译器添加向导->预制编译器配置->g++: C:\Program Files\Dev-Cpp\MinGW64\ ...
- OI生涯回顾
OI回忆录只是一个预告,估计等2020高考结束才放出来吧. 先写一下自己简单的OI历程吧: 小升初刚起步 初一 第一次比赛,NOIP PJ组215分,踩线1=,全省rk86,全国rk677(毕竟AH ...
- 我的$OI$
我只是懒得写日记啦\(\color{pink}{qwq}\) //11月8日 啊--终于要\(NOIp\)了,为此期盼了好久.紧张了好久的我,不知道会迎来怎样的结果. 我只知道这段回忆是值得保留封存的 ...
- oi回忆录
堆在一起写成流水账好了,算是记录一下自己的oi历程. [伊始] 一直到高中以前,我从来没有接触过任何oi相关的东西. 直到初三的那个暑假,在去金中报名的时候,报名表上面有一栏要填暑假想参加的夏令营. ...
随机推荐
- 实例详析ImageView的adjustViewBonds和scaleType
android:adjustViewBounds是否保持宽高比.需要与maxWidth.MaxHeight一起使用,否则单独使用没有效果. 设置View的最大高度,单独使用无效,需要与setAdjus ...
- npm快捷键
一.npm基本快捷键 node -v查看安装的nodejs版本,出现版本号,说明刚刚已正确安装nodejs.PS:未能出现版本号,请尝试注销电脑重试: npm -v查看npm的版本号,npm是在安装n ...
- Debian & CentOS建立本地iso源
在宿舍搞开发的时候经常遇到有些工具需要安装,没有网络,这时候只能靠mount本地的iso镜像来搞,结果像Debian有3张安装光盘,CentOS有2张光盘,有时候安装包不在第一张光盘里,而在第二张光盘 ...
- python学习笔记:"爬虫+有道词典"实现一个简单的英译汉程序
1.有道的翻译 网页:www.youdao.com Fig1 Fig2 Fig3 Fig4 再次点击"自动翻译"->选中'Network'->选中'第一项',如下: F ...
- springboot系列十五、springboot集成PageHelper
一.介绍 项目中经常会遇到分页,PageHelper为我们解决了这个问题.本质上实现了Mybatis的拦截器,作了分页处理. 二.配置PageHelper 1.引入依赖 pagehelper-spri ...
- kafka系列四、kafka架构原理、高可靠性存储分析及配置优化
一.概述 Kakfa起初是由LinkedIn公司开发的一个分布式的消息系统,后成为Apache的一部分,它使用Scala编写,以可水平扩展和高吞吐率而被广泛使用.目前越来越多的开源分布式处理系统如Cl ...
- java中集合的组成及特点
1:集合 Collection(单列集合) List(有序,可重复) ArrayList 底层数据结构是数组,查询快,增删慢 线程不安全,效率高 Vector 底层数据结构是数组,查询快,增删慢 线程 ...
- python httplib和urllib的性能比较
httplib代码: urlParseResult = urlparse(url) host = urlParseResult.hostname path = urlParseResult.path ...
- 018_nginx_proxy死循环问题
今天线上遇到一个请求一次,触发多次的请求,而且直接把nginx机器压垮了.经排查,经过如下: 一. server{ server www.jyall.com; location /latestrele ...
- centos中selinux功能及常用服务配置
SELinux: Secure Enhenced Linux 常用命令 获取selinux的当前状态: # getenforce 临时启用或禁用: # setenfoce 0|1 永久性启用,需要修改 ...