JSOI2018冬令营游记&总结(迁移自洛谷博客)
游记
一开始在冬令营还没开始的时候,十分期待,殊不知每天都有一场浩劫在等着我。
Day0
10:50出发,看见lbn同学发了一条说说,也随便发了一个。
然后在车上一直在睡觉,现在感觉挺后悔的,其实可以好好预习预习的,也不至于后面每天上午听得半懵半懂,下午实战天天挂。
yy和zcr他们在车上一直在玩游戏,吵得人心神不宁,不过他们也难得能那么浪了,毕竟每年也只就两次了。
晚上莫名其妙地就去代表开明去领取校团体奖。然后就是一场跟去年一模一样的讲座。
Day1
早上调闹钟5:30醒来,结果又在床上赖到了5:50才起来。然后赶紧去刷牙洗脸,全用冷水,让自己充分清醒。干完以后6:20,赶紧去食堂吃饭。
到了教室,遇到了夏令营的老朋友,就在旁边坐下了。写了一点作业。到了7:50,看见yy和zcr三个人才来,还不知道又睡到了几点。这些人,真不知道是怎么给初一初二当学长的,天天打游戏,睡到七点多钟...
然后由蒋炎岩老师来给我们讲课,ppt名字叫“好玩的字符串”。一开始是讲半节课的自动机,还是比较能听懂的。然后开始讲KMP,这个也没啥问题。然后期待他能开始讲AC自动机,结果AC自动机被三句话带过。。。下面就是一大堆题目,倒也还能听懂,因此第一天的课还是能听懂的。
下午就是我们的第一次实战。
看到T1,可以一眼看出这个是考组合数的。几个组合数的式子很明显,如果没有取模的话,完全可以做到O(K)的。然后这个除法取模,由于我见识浅薄,并不会。好吧,写一个O(nk)的骗点分吧。
T2题目不难,但是实现起来感觉挺烦的,于是直接放弃了。T3直接写了一个最暴力的暴力,其实稍微好一点的暴力也不难想,没想到还是很不应该的。
于是就这样很遗憾地30+0+30=60,低得可怕。下午听说BCD班那么多同学ak了,深感自己不行。晚上回来看了一下题解,T1的取模竟然是逆元相关,赶紧学了一下,又长见识了。晚上写出了T2。T3是“大根笛卡尔树”,还是决定回去以后再学吧。
Day2
上午基本上跟昨天一样的感受,能听懂。
下午的题目因为太粗心,T1的有个变量没有赋初值,T2因为自作聪明"为保险起见",把循环次数开大一倍,然后就这样超时了。于是30+60+0=90,其实T1T2完全有能力AC的。T3暴力都没写对,实在不应该。
Day3
上午也还行,听得也不错。
下午的实战更加悲壮了。T1用了一大堆数据结构笨拙地维护,只骗到了40分。T2想到了树形dp,但是不敢写,感觉有点不大对劲。T3的话还是很简单的,但我竟然没做出了太不应该了。
Day4
上午的网络流。讲课老师一开始认为我们“已经有了充分的网络流基础”,于是前面的基础部分10s一张幻灯片的速度跑过,后来发现我们很不行,就有重头开始讲。但由于老师备课是按照“有基础”的思路备的,所以讲的也不大听懂。还好我之间看过一些,但后面讲费用流的时候还是不大听懂,看来回去以后还是要好好看看。后半节课基本上是讲题目。一开始老师讲,下面同学一脸懵,老师可能也感觉到了,于是下面就出现了,一道题老师给我们看25分钟,讲5分钟的尴尬局面,后面的同学有不少开始自己干自己事情了。
下午的实战,第一题一开始对着小数据看规律,后来干脆用excel把n<=10的情况全画出来了,后来坐我左边的一个常州同学“自觉地”凑过来和我一起研究,最后一起发现了图形上的规律。其实完全可以对于4以后的几项,直接看数上的规律———它们的差的差相等。而这个规律在前4项上是不存在的,这也是这题坑的地方。然后T3的话一开始打算用二进制来存,但发现这样搞跟暴力几乎没有区别。然后突然想到可以建上15棵线段树,非常简单地就可以把这题做出来了。于是100+0+100=200,也还说的过去。
Day5
随后就是我们的积性函数和莫比乌斯反演,一开始听得还是能懂得,但后来听得就有点跟不上了,也不是不懂,就是思维总是比老师讲的慢几拍。
下午的实战更可怜了。第一题暴力结果尽然能过,原来是老师把数据弄错了。T2题目就没看懂,于是就没写。T3感觉应该是某种自动机,但由于自动机类的东西我还没写过,于是就写了暴力。
Day6
上午的概率和期望听得不错,但下午实战就彻底挂了。T1的dp其实是非常简单的,但是最后题目让我把答案对某个数取逆元,只能放弃。T2一开始感觉是递推,但后来发现这个递推式是无限的,又忘了可以通过一些运算转为有限,所以只能放弃。T3的根本方向搞反了。其实应该把一个点从下往上推,其实从上往下也能做但比较麻烦,就写出了一大堆bug。
Day7
上午就是计算几何基础了,结果一大堆的式子与方程把我绕得晕乎乎的,只能回去以后慢慢推了。
下午就回去了,在车上看了一会儿AC自动机,结果看睡着了。又被lbn在服务站喊醒,回来接着睡。毕竟这几天每天接近12点才睡,5:30就起来了,还是很困的唉。
总结
说实话上面的游记可以当废话看,总结才是最重要的。
这一次冬令营报了A层次,虽然在那里受尽神们的折磨,但我并不后悔。因为这一次冬令营告诉我,我存在着什么问题。如果单单只是以现在的状态和水平,去参加以后的考试的话,一定不会有好的结果的。同时,也让我见识到了外面学校的同学,是有多么强。
现在的水平与能力肯定还是不足以应对提高组的比赛的。算法与数据结构的积累只是一个方面,更重要的还是在已学过的算法里面的思维能力。能够想出正解才是真本事,学的东西再多不会用,那也只是纸上谈兵。
每天上午的听课,有的时候听不太懂,肯定是有原因的。有的时候可能会因为稍不留神错过了一点东西,而这恰恰是后面很重要的。或者是自己的思维与理解没有跟上老师的节奏,或是不能充分理解老师讲的每一个字。这些种种原因都有可能会给我的以后的学习带来一些困扰,所以都要努力克服。
下午实战的时候,经常不能拿到让自己满意的成绩。主要归结下来也还是这几点:
- 自己思考出了正确的解法,但是写出了问题。或者可以说,是自己写代码时候粗心所致,其实通过对拍等一系列手段完全是可以避免的。但是每天实战的时候,其他题目都还没有写就去对拍这一题,一直让我舍不得,所以没去对拍;或是实战的时候,看见那么多题不会写,受到了心理创伤,心里烦,不想对拍了。也有的是因为自己自以为是,擅自篡改数据范围,导致的超时等原因。
- 自己完全可以思考出正解,但没有思考出来。一方面是自己水平不够,不能对题目进行很深入的分析,透过题目的本身和出题人进行思想交流;另一方面,是自己平时经验不够,不能根据平时的经验给自己以一些提示。当然,上一点所说的心里烦乱的原因也是有的。但这里“水平不够”还是最主要的原因啊。
- 自己确实没有学过相关的算法。这样的问题,我还是需要通过广泛地学习来弥补自己的缺陷了。但是,这一个原因还是只占很少部分的,并不是主要原因。
- 想出的是错误的算法。这个归根到底还是属于第二条的原因了。还有的还是因为思维不够严谨,那么思路就很容易出漏洞。
经过上面的分析,其实关键词还是在“水平”和“严谨”两个词上面。水平问题,其实还是通过做题目,以及多加思考,训练思维,才能弥补自己能力水平与思维上的缺陷,这是我目前面临的一个主要的大问题。还有的就是严谨上面的问题了。严谨可以是思维严谨,也可以是代码严谨,没有写出不该写出的bug,白白失去那么多的分。严谨的这个问题可以说从初一开始就在困扰我,一直到现在都还没有解决。看来这是一个任重道远的过程了。我们的严谨主要就是能够不出不该出的错误,在出错以后,能够立即发现并改过来,使自己最后的程序是没有错误的。
因此,下一阶段的任务,主要还是着力于这两个方面上。我相信,只有通过我每天都认认真真的学算法,做题目,才能解决目前的这两个主要问题。我愿意为这付出我所有的时间和绝对的努力。
JSOI2018冬令营游记&总结(迁移自洛谷博客)的更多相关文章
- UVA10779 Collectors Problem 【迁移自洛谷博客】
这是一道不错的练最大流建模的基础题. 这种题目审题是关键. Bob's friends will only exchange stickers with Bob, and they will give ...
- Uva10491 Cows and Cars 【迁移自洛谷博客】
题目大意 假设有a头牛,b辆车(门的总数为a+b),你先选一个门,然后你最终选择前主持人会替你打开C扇有牛的门(不会打开你已经选择的门),问你要不要换门,输出"总是换门"的策略下, ...
- UVa1636 Headshot 【迁移自洛谷博客】
说明:小蒟蒻hkk现在正在做一些概率的题目,由于这方面和数学还有点关系,所以需要一些数学的思维,也需要表述出来,如夏军所述"把自己给讲懂",所以写了些blog,主要为帮助自己理解. ...
- 题解-洛谷P7114 字符串匹配
题面 洛谷P7114 字符串匹配 \(T\) 组测试数据.给定字符串 \(S\),问有多少不同的非空字符串 \(A\),\(B\),\(C\) 满足 \(S=ABABAB...ABC\) 且 \(A\ ...
- 【洛谷 P4934】 礼物 (位运算+DP)
题目链接 位运算+\(DP\)=状压\(DP\)?(雾 \(a\&b>=min(a,b)\)在集合的意义上就是\(a\subseteq b\) 所以对每个数的子集向子集连一条边,然后答案 ...
- 洛谷 P3958 奶酪
谨以此题来纪念我爆炸的NOIp2017 这个题虽然很多人说是并查集,但是搜索也是毫无压力的,考场搜索细节写挂,爆了个不上不下的80分.今天无意看到这道题,终于AC 首先这道题要考虑一下精度问题,虽然出 ...
- 洛谷 P1019 单词接龙 (DFS)
题目传送门 当时一看到这题,蒟蒻的我还以为是DP,结果发现标签是搜索-- 这道题的难点在于思路和预处理,真正的搜索实现起来并不难.我们可以用一个贪心的思路,开一个dic数组记录每个单词的最小重复部分, ...
- 洛谷 P1126 机器人搬重物 (BFS)
题目链接:https://www.luogu.org/problemnew/show/P1126 吐槽:这题很阴险 一开始没把格子图转化成点图:30分 转化成点图,发现样例过不去,原来每步要判断vis ...
- 题解 洛谷 P2010 【回文日期】
By:Soroak 洛谷博客 知识点:模拟+暴力枚举 思路:题目中有提到闰年然后很多人就认为,闰年是需要判断的其实,含有2月29号的回文串,前四位是一个闰年那么我们就可以直接进行暴力枚举 一些小细节: ...
随机推荐
- SQL Server 中用While循环替代游标Cursor的解决方案
在编写SQL批处理或存储过程代码的过程中,经常会碰到有些业务逻辑的处理,需要对满足条件的数据记录逐行进行处理,这个时候,大家首先想到的方案大部分是用“游标”进行处理. 举个例子,在订单管理系统中,客服 ...
- Pycharm创建模板头部默认
PyCharm 打开,点击左上角 “FILE” 进入 “Settings”,进行头文件设置: 如下: 我的模板: #!/usr/bin/env python# -*- coding:utf-8 -*- ...
- php二维数组对某一列进行数据组装
demo示例: $data = array( '0' => array('id' => 10, 'username' => '陈一'), '1' => array('id' = ...
- BaseActivity 基类
public abstract class BaseActivity extends AppCompatActivity implements IBaseView { private ProxyAct ...
- selenium中的多窗口切换
在selenium中,我们会遇到一些问题,就是多窗口处理的问题,我们爬取的内容在一个新窗口上,这个时候,我们就需要先切换到这个新的窗口上,然后进行抓取内容. 如何切换呢? 首先,获取当前窗口句柄 1. ...
- SSL异常javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
jdk 7 http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html jdk 8 http: ...
- jmeter 命令行运行与生成报告
一. 使用命令行方式运行Jmeter 1.1 为什么 使用GUI方式启动jmeter,运行线程较多的测试时,会造成内存和CPU的大量消耗,导致客户机卡死. 所以正确的打开方式是在GUI模式下调 ...
- java sftp.exec无法执行mv命令
编写java程序过程中,sftp上传下载建目录删除文件都可以,就是备份不行. 分析原因如下: 1.如果用的同一个用户,即sftp用户来通过 exec(ssh连接) 执行mv命令,那极有可能是在搭建sf ...
- Jenkins使用四:Jenkins创建任务,实现代码有改动时,自动构建
新建任务 指定在哪台节点运行 添加要监控的git地址和使用账号,此账号为设置节点时配置公私钥时设置的ssh登录账号 设置检查代码是否有变更的频率,每三分钟检查一次,如果检查到有变更就构建 修改文件再提 ...
- Delphi 二维码生成
Delphi 二维码生成 http://download.csdn.net/detail/warrially/7370171