#define BC BestCoder

一场BC的台前幕后

起源大概是这种:一个月前的BC#75结束后,AK的人非常多,于是CodeVS群里非常多人吐槽BC#75的质量,这时YJQ对KPM说:“我们来出一场BC吧。”恰好近期屯了几个原创,并且发现给BC出比赛竟然有钱拿,并且还不少,而给CodeVS出比赛就没钱拿。尽管说好有奖品可是奖品一直没有出现,于是我就萌生了给BC出题的想法。

然后又认为一个人搞不是非常靠谱,就把Hillan爷拉进出题的队伍。

然后就先開始做题面。

我直接从我之前屯的那些原创里面挑出几个给Hillan爷看,Hillan爷认为还能够。

于是AB_CE就马上有了。然后Hillan爷提供了一个D。然后我认为A太难了。于是就换了一个非常水的题。至此题面就告成了。

接下来是标程。

由于我的那些题之前也是准备过的。再把新的A题水掉之后,就仅仅差Hillan爷的D题了。

然后Hillan爷说有点麻烦让我写。然而我太弱了。仅仅写出了一个复杂度多个log的暴力。于是被Hillan爷疯狂嘲讽。因此标算是Hillan爷打的。然后E题Hillan爷为了帮我验数据也打了一个,结果速度是我的两倍,果然是我太弱了。由于时限必须定在出题人的某常数倍以上。因此我准备拿Hillan爷的程序当标程。

然后開始造数据。A题由于本来就是要送分我就直接手打了,B题纯随机一下也没事,C题略微构造了一下,E题也花了些时间构造了不少各种类型的数据防止水过。Hillan爷的D题也是直接随机一下就好了。至此数据完成。

突然得知pretest和final test都仅仅能各有一组输入输出文件,然后我又怕给E题加多组数据时限过大,于是尽管C题补加了多组数据,可是E题我仅仅是挑出了一个觉得最强的数据来作为final test。

然后看了下比赛命题注意事项。发现为了支持hack模块。必须写输入数据验证程序。然后并不知道传说中的testlib.h是如何的,虽然在阅读vfk《一场CF的台前幕后》时了解到这东西。并且也不知道整个格式应该是如何的。然后发现有个QQ联系方式,就加了。然后就拿到了一个比赛命题模板。然后发现事实上非常easy写的,于是就非常快就写完了。

突然发现还有英文题面。在英语大神的指导下,我完毕了翻译,而且给Hillan爷的英语老师看了一下。然后改了一堆错误。

至此大概就搞定了,于是和BC管理员定好了时间,BC#79,4月9日。

然后就是大概两个星期的等待,期间有少数几次更新。

BC#78之前几天,BC管理员给我开了測试场,让我把题目加进去,而且做一些提交測试。

BC#78结束后,BC首页上就挂出了BC#79的报名链接。

第二天,BC管理员拉我进了验题群。而且在群里发布了測试场链接。

三天后,最终出现了我进群之后的第二句消息:“这套题会不会……太难了……另:难度预期标杆:xxx。”当中xxx是BC#75的链接。

然而假设再出得和BC#75一样水肯定还是要被吐槽的吧。

然后发现E题描写叙述弄错了,赶紧更正。

这时又有人说B题太难了。我就说代码除了读入输出就两行啊,然后就被疯狂嘲讽:“难道评定题目难度仅仅有代码长度一个參数?逗我。”

然后我承认这题的思考难度确实太大,就扔出了一个备用的比較简单的题。公认难度不算太大。然后在Claris的要求下。我还是给E题搞了多组数据。这时突然发现虽然多组数据,可是还是跑的非常快。时限不必非常高。然后又论了论B题的难度,群里就渐渐没消息了。

一晃就到了比赛当晚。19点整,比赛開始。

花絮:在div2中。一堆人在Clarification里表示不太清楚题意,怎么这么多人都觉得正多边形内角和是360°,你们的数学是体育老师教的吗?

3分27秒。div2首个人过A。

5分钟内。11人过A。6分钟内,27人过A。7分钟内,47人过A。

8分钟内,67人过A。9分钟内,101人过A。10分钟内。123人过A。

15分钟内,241人过A。

20分钟,377人过A。总之增长速度极快。一定程度上超出了我的想象。

然而div2竟然没人过B……此时有人在验题群里吐槽了:B题确实太难了吧。

div1的情况也好不到哪儿去:8分54秒,首个人过B。10分50秒后,首个人过C。25分18秒后,首个人过D。仅仅看这些信息似乎非常好。然而事实是前30分钟也仅仅有12人次AC……

然后我也意识到B题真的难了,这就导致div2一堆人过A之后卡死,而div1一堆人看题跑。

26分43秒,div2首个人过B。接下来34分30秒,36分59秒。41分06秒……陆续有人过B,可是比过A的记录不知道稀疏到哪儿去了,结果1小时内仅仅有10个人过B。终于也仅仅有27个人过B。

有意思的是。在div2中,41分36秒。首个人过D,45分13秒,第二个人过D。而56分43秒才有人过C,终于也仅仅有8个人过D,可是过C的人更是少得可怜:3个。因此验题群有人说。D题是不是比C题还简单。

再看看div1,似乎略微有趣一些,做题分布比較杂,过AB_C的都有一些:40分钟内。15人过B,8人过C。4人过D。1小时内,33人过B,15人过C。7人过D。

激动人心的事情发生了,有人过了E!

然而又突然看到他在Clarification里面问E题的pretest有几组数据,说自己怕TLE。于是我看了看他的E跑了4800ms,而final test的数据量是pretest的1.5倍。只是他写的似乎是三个log的算法,被卡掉也是应该的吧。

一晃比赛就结束了。突然发现D题时限设置错误,一堆人被卡常。好像仅仅有一个人过,并且那个人和时限仅仅差了100ms不到……改正后,通过率就正常了。有人的写法和我之前写的暴力一样。多了个log,还是被卡掉了。

div2终于结果:第一名AK,第二名和第三名过了AB_C,第四名过了ABD。第五名到第七名过了AD,第八名过了AB并hack成功4次,强行超越过了AD的第九名。第10名到第14名过了AB,第15名挤进来一个仅仅过了D的,然后第16名到第30名过了AB。第31名又挤进来一个仅仅过了D的。第32名过了AB。第33名过了B,然后第34名到第597名都是仅仅过A的……这就是B题太难的后果,把强行让后面一大堆人拼手速。然后最后有6个没过不论什么题目却hack成功几次的,再往后就是爆零的了。

div1大概是聚集了一些精英。情况尚好:第一名AK,第二名到第七名过了AB_C,第八名过了B_C。第九名过了AB。第10名过了B_C。第11名过了AB,第12名过了AC,第13名到第18名过了AB,第19名和第20名仅仅过了C,第21名到第23名仅仅过了B,然后第24名到第69名里面除了第27名,第39名,第61名仅仅过了B。其它都是仅仅过了A,再后面就是爆零的了。

著名选手uwi好像被我坑得不浅,竟然没过不论什么题目……结果掉到了BC总榜第4。然后我突然发现,BC总榜的第4名和第10名仅仅差15分,很挤……

总之中的一个场BC就这样结束了。

我的B_CE都是准备了非常久的题,然后暂时出A、翻译题面、造数据、写输入数据验证程序,也占用了我近一个星期内每天下午和晚上的时间,可是这场比赛仅仅进行了两小时。当然。多于两个小时的努力,才值得数百人赞赏两小时。

一场BC的台前幕后的更多相关文章

  1. 一场comet常规赛的台前幕后

    有出题的想法大概是#8比完之后,#8的比赛较易,应该是符合https://info.cometoj.com 上的常规赛难度说明. 我们几个觉得我们一定可以出质量更高的题. 那个时候在玩线段树的时碰巧想 ...

  2. 源码分析Session的台前幕后(Asp .Net MVC5)

    在这篇文章里,我们从源代码的角度重点分析Session的创建.缓存.销毁.管理. 通常我们说的Session指的是在控制器中使用的Session字段,该字段的类型是HttpSessionState.可 ...

  3. WC2019 20天训练

    Day -1 2019.1.2 初步计划: 0x60 图论 std 洛谷提高剩余练习 NOIP2018遗留题解 洛谷省选基础练习 数学: 1.数论 2.组合数学(练习:莫比乌斯反演) 3.概率(练习: ...

  4. Git历险记(四)——索引与提交的幕后故事

    我想如果看过<Git历险记>的前面三篇文章的朋友可能已经知道怎么用git add,git commit这两个命令了:知道它们一个是把文件暂存到索引中为下一次提交做准备,一个创建新的提交(c ...

  5. 转:鏖战双十一-阿里直播平台面临的技术挑战(webSocket, 敏感词过滤等很不错)

    转自:http://www.infoq.com/cn/articles/alibaba-broadcast-platform-technology-challenges 鏖战双十一-阿里直播平台面临的 ...

  6. 明修栈道,暗渡陈仓----之私募一哥徐翔新玩法 z

    前言:去年以来,因徐翔和宁电突然举牌资质平平的 000692 惠天热电,引起本人的兴趣,陆陆续续花了比较多的时间和精力去研究和跟踪000692惠天热电,期间也两次亲自去沈阳调研,从一些台前幕后人士那里 ...

  7. 中国25位最具影响力的IC人物

    当今许多企业的领导者几乎已经成为其企业的代名词,而在芯片业,我们听说的更多的是“龙芯”.“国芯”,他们的领导者的声音却鲜有传出.芯片业透出的强烈的民族色彩,也使这些隐身的企业家们的注意力更聚集在研发上 ...

  8. 你不知道的JS之作用域和闭包(一)什么是作用域?

    原文:你不知道的js系列 什么是作用域(Scope)? 作用域 是这样一组规则——它定义了如何存放变量,以及程序如何找到之前定义的变量. 编译器原理 JavaScript 通常被归类为动态语言或者解释 ...

  9. 响铃:蜗牛读书“文”、网易云信“武”:游戏之外网易的AB面

    文|曾响铃来源|科技向令说(xiangling0815) 2019年开年,网易又"搞事情"了. 近日,网易集团旗下网易云信.网易七鱼主办的"网易MCtalk泛娱乐创新峰会 ...

随机推荐

  1. 开发一款APP需要多少钱

    移动互联网近几年发展尤为迅速,越来越多的企业也开始将目光聚集到了移动互联网,这意味着移动互联网时代到来,而移动APP应用是竞争的一个因素.在移动互联网时代,移动APP开发已经不再是什么新鲜事了,许多的 ...

  2. servU服务器连接不上问题的解决

    在服务器上安装了servU64位版,建立了用户,设置了防火墙,正常启动. 但在客户端发出FTP://服务器IP 命令后,弹出输入用户名和密码的对话框,输入正确的用户名和密码后,却始终连接不上. ftp ...

  3. 【转】WITH AS 用法

    转载自:http://blog.csdn.net/shaochao14/article/details/6223052 一.WITH AS的含义 WITH AS短语,也叫做子查询部分(subquery ...

  4. 梦想CAD控件网页版扩展数据

    随着基于CAD的应用软件飞速发展,经常需要保存一些与图形可视性无关的数据,即非图形参数.例如在绘制化验样图中包含品位数据.MxCAD定义一类新的参数——实体扩展数据.扩展数据与实体的可视性无关,而是用 ...

  5. oracle 安装准备

    1.选择数据库 (官网查询支持的操作系统) 2.选择系统 (官网查询支持的硬件)(更新补丁) 3.选择硬件 (io性能测试--oracle 大量小文件读写) 4.oracle 升级(和打补丁) 5.o ...

  6. 出现For input string: "" 错误

    然后是因为后台生成的是一个数组,前台取的是一个对象,所以会产生这个错误 前后台交互时 mv.addObject("vo1",fhList.get(0));}将数组改成fhList. ...

  7. 顶点的度 (20 分) Java解法

    顶点的度 顶点的图.给定一个有向图,输出各顶点的出度和入度. 输入格式: 输入文件中包含多个测试数据,每个测试数据描述了一个无权有向图.每个测试数据的第一行为两个正整数n 和m,1 ≤ n ≤ 100 ...

  8. time模块,补上之前拉下的作业。

    time,时间模块比较重要,但不难学,主要是要学会转换时间格式.计算机的时间都是时间戳.人是看不懂的.写出时间转换的固定格式语句.import time   # 首先就是引入时间模块. time.ti ...

  9. 通过docker-composer启动容器nginx,并完成spring.boot的web站点端口转发

    前面已经讲过2篇基于docker的mysql.redis容器编排并启动.这次将练习下nginx的docker方式的部署,以及通过nginx去代理宿主主机上的Web服务应该怎么配 PS:(这里由于ngi ...

  10. Sublime Text 3 快捷键(转载)

    本文转自:https://segmentfault.com/a/1190000002570753 (欢迎阅读原文,侵删) Sublime Text 3 快捷键精华版 Ctrl+Shift+P:打开命令 ...