51Nod 算法马拉松22 开黑记
这是一场惨烈的开黑大战,始于全机房开黑指望刷进rank前十拿钱的壮志,终于被各路神犇怒踩成rank20,差点200点头盾不保的落魄,想起将近一年前ad和zcg等学长挤进rank10的壮举,不由得唏嘘,我好菜啊……
作为我方的MVP,我就写写这次开黑大战的经历吧……
星期四的时候51Nod大翻车,本来应该周五开始的比赛不小心设成周四开始了,虽然一分多钟之后就关了,不过我正好把后五题都留着了,就把题面存了起来让全机房一块看(然而并没有人去看……包括我……)。
星期五的时候比赛重新开始,结果开场不久就有人A后几题,看来看见题面的不止我们这几个人啊……决定这次马拉松要开黑,所有人分工去写六道题,最后代码统一交给lrz(毕竟他排名比较高),然后大家就开始去刚自己有思路的题了。
一开始准备刚一下F题,以为是序列自动机的应用,然而画了一会儿之后发现序列自动机是匹配一个串的子串和另一个串的子序列,然后就没思路了,放弃去看别的题。
大概看了一会儿之后锁定在E题上,发现题目要求以出现次数排序,想起来Noip之前自己出的一道题(NT应该见过,每次询问区间中出现次数第k多的数),那道题是以出现次数为关键字维护平衡树,本题可以如法炮制,平衡树启发式合并维护即可。
反正都开黑了,目标是尽一切手段冲rank前十,就没有现写splay,从普通平衡树那儿粘了一个板子(后来发现有一个小地方写挂了,这都能过普通平衡树……),码完250行代码之后开始调,然而没一会儿就该回宿舍了……
在我写E的时候旁边的lrd在搞B题,听说写了个高消求初始方案+SPFA更新答案,然后被一个小点卡住了(其余测试点都是不到31ms过的),二分得出范围是5,然而也没时间打暴搜就回宿舍了……ztc在回宿舍10min之前切掉了A题,拿到了第一滴血,第二天早上来了之后lrz就把代码交上去了。
早上继续调,早饭都没去吃,托lrz给我捎了点吃的……
早饭之后lpx用他的方法把B切掉了,紧接着lrd写了个暴搜把那个点过了,然后lpx就把代码给了lrz,然而只A掉A题和B题的排名是很低的……
我犯的其实都是些比较隐蔽的错误,后来A了很多点但是还是有一半的测试点炸内存了,还有几个点TLE,以为是卡常数+卡指针,后来调了很久才发现是一个地方应该把两个map swap一下,但是我直接赋值了,复杂度不对,并且没把原来的那个删掉,然后就炸内存了……改掉之后又调整了一下内存池大小才勉强2300ms左右飞过(当时机房好几个人都在看我评测,A了之后半个机房都沸腾了……),然而把代码给了lrz之后他只跑了1600+ms……
A掉E题之后lrz瞬间升到了rank10,然而没过很久就被dalao们挤到rank11了,感觉不太妙,就去刚D题,想了大概20min+发现了那个结论,写了一发01-Trie,然而后面的点一直WA,然后发现是求无向完全图生成树计数的部分写错了,正准备手动推式子,lrd喊了一声去查OEIS,然后就带着前几项1,3,16去查了,正好第一个就是……然而英文不太好表示有点怀疑,然后去查百度,在一个CSDN里看见了答案就是$n^{n-2}$,和OEIS一致……把这个部分改了就过掉了,lrz交了之后从rank12升到了rank9……
后来大家都在尝试刚掉C题和F题,然而C题根本一点思路都没有,F题我搞了很久也没思路,被迫弃坑……然而不久就被挤出前十了,并且并没有什么办法补救……
后来,截止到比赛结束的时候,被挤到了rank20,差点连200点头盾都保不住了……
总的贡献是这样的:
ztc:A(40)
lpx&lrd:B(80)
我:D(160)+E(320)=480(装B
这次的开黑经历可谓是惨啊……被神犇们D的好惨……
看来还是需要提升实力,下次马拉松再开黑一次……我的动力就是钱
51Nod 算法马拉松22 开黑记的更多相关文章
- 51Nod 算法马拉松23 开黑记
惨啊……虽然开了半天黑,但是还是被dalao们踩了…… 第二次开黑,还是被卡在rank20了,我好菜啊……= = 写一写比赛经过吧…… 看到题之后习惯性都打开,A~D看上去似乎并没有什么思路,F应该是 ...
- 51NOD 算法马拉松8
题目戳这里:51NOD算法马拉松8 某天晚上kpm在玩OSU!之余让我看一下B题...然后我就被坑进了51Nod... A.还是01串 水题..怎么乱写应该都可以.记个前缀和然后枚举就行了.时间复杂度 ...
- 51nod 算法马拉松 34 Problem D 区间求和2 (FFT加速卷积)
题目链接 51nod 算法马拉松 34 Problem D 在这个题中$2$这个质数比较特殊,所以我们先特判$2$的情况,然后仅考虑大于等于$3$的奇数即可. 首先考虑任意一个点对$(i, j)$ ...
- 随便玩玩系列之一:SPOJ-RNG+51nod 算法马拉松17F+51nod 1034 骨牌覆盖v3
先说说前面的SPOJ-RNG吧,题意就是给n个数,x1,x2,...,xn 每次可以生成[-x1,x1]范围的浮点数,把n次这种操作生成的数之和加起来,为s,求s在[A,B]内的概率 连续形的概率 假 ...
- 51Nod 算法马拉松21(迎新年)
这次打算法马拉松是在星期五的晚上,发挥还算正常(废话,剩下的题都不会= =). 讲讲比赛经过吧. 8:00准时发题,拿到之后第一时间开始读. A配对,看上去像是二分图最大权匹配,一看范围吓傻了,先跳过 ...
- 51Nod 算法马拉松15 记一次悲壮而又开心的骗分比赛
OwO 故事的起源大概是zcg前天发现51Nod晚上有场马拉松,然后他就很开心的过去打了 神奇的故事就开始了: 晚上的时候我当时貌似正在写线段树?然后看见zcg一脸激动告诉我第一题有九个点直接输出B就 ...
- 51nod算法马拉松12
A 第K大区间 不妨考虑二分答案x,则问题转化成计算有多少个区间满足众数出现的次数>=x. 那么这个问题我们使用滑动窗口,枚举右端点,则左端点肯定单调递增,然后维护一个简单的数组就能资瓷添加元素 ...
- 51NOD 算法马拉松12
OTZ做出题目的神犇..断断续续改完了在这里存一下思路吧 A题:第K大区间题意:定义一个区间的值为其众数出现的次数.现给出n个数,求将所有区间的值排序后,第K大的值为多少. 分析:二分答案mid,任务 ...
- 51nod算法马拉松 contest7
A题 链接:http://www.51nod.com/contest/problem.html#!problemId=1417 推荐链接:http://blog.csdn.net/a837199685 ...
随机推荐
- Vue---基础笔记 (基础的构建 )
vue 基础 准备工作 chrome浏览器插件安装 完成后出现标记 vue页面标记需要使用vue.js非vue.min.js 调试页面 结构模型MVVM = m:model + v:view + v ...
- python全栈开发_day8_文件的多种读写方式及游标
一:文件的多种读写方式 主方式:w r a 从方式:t b + 了解方式:x u 1)按t(按照字符进行操作): with open("data_1.txt& ...
- 为什么一定要学Go语言
Go语言是谷歌2009发布的第二款开源编程语言.Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全.支持并行进程. 为什么要选择学习Go ...
- Maven 整合 robot framework 进行测试
1. 在maven pom.xml中先配置robot framework的plugin: <plugin> <!-- integration test runner (robot-f ...
- mongodb与python随手记
在python中使用pymongo连接mongodb数据库. 基本代码如下: from pymongo import MongoClient client = MongoClient('127.0.0 ...
- Linux安装python3.6.3
一: (1)wget https://www.python.org/ftp/python/3.6.3/Python-3.6.3.tgz 下载安装包 (可以到网站下载,然后上传到Linux) (2)ta ...
- 搭建github静态博客
github设置 建立新的repository,命名为OwnerName.github.io,例如gotochenglong.github.io git管理 设置ssh密匙 使用命令ssh-keyge ...
- Failed to start NodeManager caused by "/var/lib/hadoop-yarn/yarn-nm-recovery/yarn-nm-state/LOCK: Permission denied"
Hadoop 安装步骤: 0. 安装前准备(节点机器,环境设置,yum源设置) 1. 配置并安装Cloudera-Manager 2. 启动 CM 服务 3. 安装CDH,并配置集群 4. 启动 ...
- Robot Framework自动化测试三(selenium API)
Robot Framework Selenium API 说明: 此文档只是将最常用的UI 操作列出.更多方法请查找selenium2Library 关键字库. 一.浏览器驱动 通过不同的浏览器 ...
- 通过Jscript中@cc_on 语句识别IE浏览器及版本的代码
激活条件编译支持. @cc_on 备注 @cc_on 语句激活脚本引擎中的条件编译. 强烈推荐在注释中使用 @cc_on 语句,以使不支持条件编译的浏览器将您的脚本视为有效语法而接受它: /*@cc_ ...