一场comet常规赛的台前幕后
有出题的想法大概是#8比完之后,#8的比赛较易,应该是符合https://info.cometoj.com 上的常规赛难度说明。
我们几个觉得我们一定可以出质量更高的题。
那个时候在玩线段树的时碰巧想出了现在的E,并且InFleaKing以前也出过一些题,拼起来,再出个ABC,就可以出一套比赛了。
然后又拉来jokerwyt,三人组成了最开始的出题团队。
jokerwyt联系了负责出题事宜的工作人员,发现待遇还不错,于是我们开始想idea。
某个下午我在草稿纸上画了个圈圈,然后想着第1次跳1步,第2次跳2步,第i次跳i步,什么时候回到原点呢?大概想了几分钟,恍然意识到这就是个exgcd能做的东西,拿给InFleaKing看,他觉得也不错,似裸题又要点思维,这样的题比较符合我们的出题初衷,由于比较容易,就决定放C。
当时D是一个InFleaKing的一个容斥,F是一个拆式子数据结构维护。
A是jokerwyt的拆位,B是简单不等式。
很遗憾,到最后,除了我的C、E,
A、B、D、F全部被dreamoon毙了。
原因有什么A不能让新手做位运算,B太经典,整套题过于数学,F过于套路等……
某个晚上,我想起InFleaKing写过一个背单词的程序,背单词如果要效果好,肯定要相邻间隔尽可能平均,然后我就发现我不会做。
但是单词出现3次以内就是一个简单构造的\(O(1)\)题,证明也挺显然,我觉得放A题不错,但是最后不想管了就丢给jokerwyt去出了,没想到他放了B。
但是想想A连位运算都不给出,放B似乎也是正确的。
D题InFleaKing换了一个看上去是表达式解析的欺诈题,据说他自己也被欺诈了。
拿给我想的时候,大概想了5分钟吧,就想到离散一下就变成简单的表达式题了。
有一定的码量,但是很好写,所以就放D了。
F是在最后阶段被毙的,时间有点赶,于是ilnil也加入了出题组,贡献了一道数据结构题。
A题实在想不出什么妙妙题,就契合主题了。
没想到要在CF的polygon上加题来验题,研究了好久才知道怎么用。
验题阶段我们有互相验,dreamoon在我们验完之后又验了好几遍,加了一些数据,写了写std和错误程序,提出了很多修改建议,非常感谢他尽职尽责地检查。
比赛前非常地紧张,害怕题意出锅,数据出锅,题被A穿或没人过被喷毒瘤等。
A题很快就有人过,同时有很多人没过,jokerwyt看了他们的code,基本都是没判<5。
B题我们预期将会坑到很多人,没判只有1、2和只有1的情况,然而前面的大佬还是稳,可能选手们有些紧张,没有那么快想到,在15分钟后才出现大批AC。
C题我看着几页的WA和TLE,全部是暴力,代码里就是没有exgcd的字样,对比上一场比赛,20多分钟了交了那么多份代码却没有人AC,群里有一位同学喷我毒瘤了,心态崩了,之后加了大样例明示选手不要交暴力了。
接近30分钟,我终于看到了zsy代码里的exgcd,但是被暴力枚举每个约数卡了,我知道他很快就会AC的,没想到他改了个pollard-pho……
C题到一个小时才有10个AC,特别是很多大佬没有AC,这大大出乎我的意料,群里爆发了大面积不爽,什么不给签到选手活路之类的,对此,我很无奈,因为这题只是稍微拐了个弯而已,我相信签到选手肯定也是学过exgcd的,只是想不到……
一个小时那时的排行榜就让我们出题组判定D题肯定不会有预期那么多人AC了,因为都卡在了C,就算花了九牛二虎之力越过了C,再看到D一个表达式题,肯定就继续喷出题人毒瘤了,接着弃疗,根本不会想到这题也是个简单题,至于E、F有人过就不错了。
最后结果与我们中途的预期类似。
E题有一个人写了正解,可惜少讨论了一些东西,在比赛过后四分钟才过,F题有一堆大佬肝,可惜走了歪路,也是比赛结束后几分钟才有人过。
对C题难度的错误估计确实比较难受,影响了整场比赛,我没想到大家对数论的理解这么差,也没想到当时随手的一个优化会卡T这么多人。
或许把B-E往右平移一位会比较有体验。
dreamoon说他心目的难度和OJ上的那个不一样,不知道选手们能不能理解这点,我们也希望出一套有思维难度的妙妙题,而不是像A题那样摆在面前送人,不然选手们做了也没有什么用,希望这套题能给你们带来一些收获吧。
一场comet常规赛的台前幕后的更多相关文章
- 一场BC的台前幕后
#define BC BestCoder 一场BC的台前幕后 起源大概是这种:一个月前的BC#75结束后,AK的人非常多,于是CodeVS群里非常多人吐槽BC#75的质量,这时YJQ对KPM说:&qu ...
- 源码分析Session的台前幕后(Asp .Net MVC5)
在这篇文章里,我们从源代码的角度重点分析Session的创建.缓存.销毁.管理. 通常我们说的Session指的是在控制器中使用的Session字段,该字段的类型是HttpSessionState.可 ...
- Git历险记(四)——索引与提交的幕后故事
我想如果看过<Git历险记>的前面三篇文章的朋友可能已经知道怎么用git add,git commit这两个命令了:知道它们一个是把文件暂存到索引中为下一次提交做准备,一个创建新的提交(c ...
- 转:鏖战双十一-阿里直播平台面临的技术挑战(webSocket, 敏感词过滤等很不错)
转自:http://www.infoq.com/cn/articles/alibaba-broadcast-platform-technology-challenges 鏖战双十一-阿里直播平台面临的 ...
- 明修栈道,暗渡陈仓----之私募一哥徐翔新玩法 z
前言:去年以来,因徐翔和宁电突然举牌资质平平的 000692 惠天热电,引起本人的兴趣,陆陆续续花了比较多的时间和精力去研究和跟踪000692惠天热电,期间也两次亲自去沈阳调研,从一些台前幕后人士那里 ...
- 中国25位最具影响力的IC人物
当今许多企业的领导者几乎已经成为其企业的代名词,而在芯片业,我们听说的更多的是“龙芯”.“国芯”,他们的领导者的声音却鲜有传出.芯片业透出的强烈的民族色彩,也使这些隐身的企业家们的注意力更聚集在研发上 ...
- 你不知道的JS之作用域和闭包(一)什么是作用域?
原文:你不知道的js系列 什么是作用域(Scope)? 作用域 是这样一组规则——它定义了如何存放变量,以及程序如何找到之前定义的变量. 编译器原理 JavaScript 通常被归类为动态语言或者解释 ...
- WC2019 20天训练
Day -1 2019.1.2 初步计划: 0x60 图论 std 洛谷提高剩余练习 NOIP2018遗留题解 洛谷省选基础练习 数学: 1.数论 2.组合数学(练习:莫比乌斯反演) 3.概率(练习: ...
- 响铃:蜗牛读书“文”、网易云信“武”:游戏之外网易的AB面
文|曾响铃来源|科技向令说(xiangling0815) 2019年开年,网易又"搞事情"了. 近日,网易集团旗下网易云信.网易七鱼主办的"网易MCtalk泛娱乐创新峰会 ...
随机推荐
- ruby之基础语法
ruby语法之哈希 =>相当于python的字典 ruby语法之数组 =>相当于python的列表 举例: gitaly= Hash.new #建立新Hash类型 gitaly['firs ...
- Go(二)函数
函数是一等公民 与其他主要编程语言的差异 1.可以有多个返回值 2.所有参数都是值传递 slice.map.channel会有传引用是错觉,如切片背后是数组,是一个数据结构,里面包含了指向对应数组的指 ...
- SparkStreaming反压机制
一.背景 在默认情况下,Spark Streaming 通过 receivers (或者是 Direct 方式) 以生产者生产数据的速率接收数据.当 batch processing time > ...
- yii2 后台前后台 前后台登陆、退出问题
问题描述:我使用前后台分离 配置如下: 'user' => [ 'identityClass' => 'app\models\User', 'enableAutoLogin' => ...
- 洛谷P2015 二叉苹果树(树状dp)
题目描述 有一棵苹果树,如果树枝有分叉,一定是分2叉(就是说没有只有1个儿子的结点) 这棵树共有N个结点(叶子点或者树枝分叉点),编号为1-N,树根编号一定是1. 我们用一根树枝两端连接的结点的编号来 ...
- Service系统服务(二):补充应用技巧、软连接与硬连接、man手册、zip备份、vim效率操作、自定义yum软件仓库、发布及测试yum仓库、编译安装软件包
一.补充应用技巧 目标: 本例要求掌握在运维中比较常用的一些扩展命令技巧的使用,完成下列小技巧操作: 1> 采用数值形式将目录/root的权限调整为 rwx------ 2> 将记录的 ...
- oracle 批处理 bulk collect 带来的性能优势
create table -- drop table tmp_20190706_220000-- truncate table tmp_20190706_220000 create table tmp ...
- Android程序中欢迎界面
额,在做项目中,肯定首先要用到欢迎界面,下面是我在做项目中用的最简单的一个欢迎界面,即打开程序时,先是显示一张图片,然后等一段时间后图片消失,进入登录界面.直接上代码,有注释也不用解释了: 首先是We ...
- linux基础知识汇总(二)-vi/vim
转:http://blog.csdn.net/sky04/article/details/5662582 vi与vim一样都是编辑器,不同的是vim更高级一些,可以理解是vi的高级版本.vi就像Win ...
- Jmeter 5.1参数化csv引入文件
Jmeter 5.1参数化csv引入文件 1.引用外部参数文件.新建json.txt文本输入需要的数据,我写了两条数据. 2.添加CSV数据文件设置,输入文件名.变量名.是否读取首行 报文中引用参数, ...