夏令营day11总结
来源:互联网 发布:过程控制软件 编辑:程序博客网 时间:2024/05/21 17:30
今天打了场亦可赛艇的acm。
虽然主办方(其实就是maple和tmk两个人233)号称尽力模拟真实的acm,然而由于没有打印机,也就没有纸质试题,因此提供两部电脑,只有一部可以打代码,另一部只能看题2333。气球虽然有,然而tmk不会弄,直接发给我们让我们自己吹,搞的lkb不小心还吹爆了一个。
昨天说了,蒟蒻lkb抱了xyf神犇和yhf神犇的大腿,搞了个“闷声大发财”队,企图通过队名加rp。
由于lkb实在太弱,当不了代码手,因此只打算翻译题目。
(教练组织比赛的时候直接挑的英文原题给我们做。)
比赛一开始,全队就奔着抢一血去的(赛前一分钟还在玩奇奇怪怪的网络天才2333)。lkb第一时间点开了A题,读题10s之后发现是纯净水,题目大意是:
有长度为
n 的正整数序列x1..n 和q 次询问,第i 次询问时给定一个正整数mi ,统计x 序列中大于等于mi 的数字的个数。
显然简单的排序+二分即可解决,于是xyf神犇花了大约5min敲代码,一交果然AC,顺利拿到全场一血。这时比赛才开始6分钟。
趁刚才xyf敲代码的时间,lkb又抓紧看了几题,发现B题是个很逆天的东西,看数据范围应该比较难做。
给定文本串
S 和m 个模式串Ti ,要求在S 中找到不重叠的两部分,使它们拼接起来等于T 。问最多能匹配多少个不同的T 。
大家讨论了一下,迅速决定先跳过此题。事后也证明我们的决定是明智的。
于是lkb又第一时间翻译出了C题,大意是:
有
n 个人和m 种语言,每个人会ki 种不同的语言,学习一种新的语言的花费为1。人之间的交流可以是间接的(即如果A与B都会某种语言i ,B与C都会某种语言j ,那么我们也认为A与C之间可以交流。)
问:要达到所有人之间可以互相交流,最少需要多少花费。
这题lkb一看似乎是并查集?但不敢主观臆断,于是与xyf和yhf解释了一下题意,认为应该是并查集没错。
于是xyf马上敲代码,又是几分钟的工夫就搞定了。但这次提交上去却WA了。xyf仔细分析了一下题目,发现我们少考虑了全为0的情况。于是加上特判之后果然AC,仍然是全场第一个做出此题的队伍。
在我们队做C题时,退役狗队和RNG分别过了E题和
D题,这时全场有三支队伍过了两题。我们队因为一次WA,罚时掉到了第二。
于是lkb又跑去看D题,然而yhf一听到几个字眼就可以判断出这题是他之前做过的bfs水题。题意是:
- 给定两个正整数
n 和m ,每次可以执行两个操作之一:n←n×2 n←n−1
- 求把
n 变成m 所需的最小步数。
于是yhf开始敲代码,大概也就是花了10min左右的样子,一次AC。而退役狗队又比我们早几分钟做出了D题,所以我们两队是场上仅有的两支在40分钟内做出三题的队伍,但由于前一题的罚时,导致我们落后了20分钟左右,屈居第二。
在yhf敲代码的时间lkb又翻译出了E题:
有一个字符串,这个字符串的每个字符分别代表着0-63之间的数字,然后问有多少对相同长度的字符串 & (按位与)运算之后,恰好等于这个字符串
但由于lkb感觉样例有些奇怪,无法理解题目的意思,于是打算先放下这题,往后面看看。
很快F题的题意也知道了:
有
n×m 个格子,第i 行第j 列的格子里有一个类型为aij 的箱子(原文“chest”被google机翻弄成了xiongbu……囧)。所有编号为x≤p−1 的箱子里都有一把钥匙可以打开类型为x+1 的箱子。类型为1 的箱子不需要钥匙打开,类型p 的箱子里藏有宝藏。你一开始在左上角(第1行第1列),问至少要走多少距离才能拿到宝藏。
这题也是比较明显的bfs模型,仍然交给yhf实现。但第一次交却T了。我们发现yhf的输入居然用了cin……那是将近十万的数据量啊!!马上改scanf。改完迟迟不出结果,怀疑是被yhf卡评测了。
于是xyf说再交一遍试试?然而vjudge不允许交完全相同的代码,就加了句//+1s
的注释,然而后面出结果才发现,原来两次都T了。。也就是白白交多一次无效的,多罚20min。。TAT
后面又想,能不能搞个排序预处理优化一下什么的,试了一下,确实有效果,之前在第16个点T的,现在在第19个点T。然而还是T啊。终于决定弃疗去搞后面的题。
G题是一道网络流,我们三个都不怎么熟悉,只能跳过。
H题是位运算,感觉有些复杂,也先跳过。
I题读不懂题。
J题又tm神奇位运算。
K题终于可做了,xyf神犇指点了一下,lkb打的代码(也是lkb这次打的唯一一题),第一次交的时候WA了。xyf看了一下,原来是考虑的情况不到位。第二次修正了之后就AC了。
后来总算把E题的题意搞懂了,但是还是有失误:不是原串&另一个串=原串,只要是某两个串&之后=原串就可以了。因为这个审题上的失误我们WA了好几次。最后还是仔细分析了样例2之后才发现,及时补救了回来。这个主要是我的责任。
而在最后只剩十几分钟的时候,lkb又发现了自己H题的审题失误。或和异或是交替进行的(the operations of bitwise exclusive OR and bitwise OR alternate),而不是之前所认为的一直或,直到最后一轮才异或(有些受到题面例子解释的影响)。跟xyf说了之后,他很快搞出了个简易版本的线段树,并在最后时刻过掉了H题。
最终,闷声大发财队以6题的成绩名列rank3(退役狗队AK全部12题,RNG队9题),获得了一等奖的好成绩。
这是lkb第二次打acm(上一次打好像是去年夏令营),成绩还挺不错的。感觉自己又有所收获。
这次真的获益不小,总结出来还挺不少的:团队的分工很重要啦,不能迷信机翻啦,手速很重要啦,还有其他一些。
嗯,加油,下次做的更好。
- 夏令营day11总结
- 2016长乐夏令营 Day11
- 2016.8.11 夏令营 Day11
- day11总结
- 泛型总结 day11
- day11-java总结
- 【SDnoip夏令营】【day7&&总结】
- 开源夏令营总结
- 开源夏令营总结
- 开源夏令营总结
- 开源夏令营总结
- 夏令营day1总结
- 夏令营day2总结
- 夏令营day3总结
- 夏令营day4总结
- 夏令营day5总结
- 夏令营day6总结
- 夏令营第一周总结
- js/jquery 获取本地文件的文件路劲 获取input框中type=‘file’ 中的文件路径
- 《实战Java...》读书笔记
- tomcat7可以运行jdk8的项目吗/jdk8项目在tomcat7上可以使用吗
- HDU 1171(dp46)
- iOS 程序 main 函数之前发生了什么
- 夏令营day11总结
- 微服务架构 (四): 提升微服务分布式远程调用的可靠性与性能; Time Out 与 Circuit Breaker
- 四种节点流和Buffered的使用
- 递归算法
- 洗牌(shuffle)问题详解
- BootStrap 教程 之 插件(04)
- HDU 2048 (dp46)
- Java中的文件和流相关知识
- 文件系统中数据读取的详细过程