前言

  这次THUWC有pretest,非常不错。但还是要对拍。

DAY1

  上午先去报个到。

  下午1:30开始比赛,状态还是很好的。

  开场先看题。

  发现t1是个联赛贪心题,就花了半个小时写完+拍完了。

  然后同时开t2、t3。感觉t2的\(O(n^2)\)挺好写的,但只有\(10\)分,就先放了一下。

  感觉t3很可做,就开始写t3。

  想法很简单,先把\(A\)串的sam建出来,然后每次把\(B\)串在sam上跑了一遍就可以得到答案。

  但是我的做法有点小问题,于是对拍会拍出错,所以就缝缝补补,花了\(4\)个小时写出了一个看起来挺对的sam+exkmp+hash。

  接着发现t2的\(40\)分部分分是个很简单的DP,就花了\(20\)分钟写完了。

  pt分:\(100+40+100=240\)

  出来后听说t3的pretest超水,感觉要炸了。

DAY2

  早上开营仪式,THU又在黑PKU。

  下午因为各种原因延迟了一个小时。

  开场依旧是看题。看到t3时被吓到了。。。这是什么题啊。。。就是一个人工智能的题,给你一堆博客&论文,要你实现一个算法,还要调参。

  我那么弱,就先开前两题吧。

  感觉t2是个DP,推了一下,推出了一个容斥DP的式子,又发现可以分治FFT,于是就花了一个小时把这道题写完了。

  接着看t1。

  先随便猜了几个结论,但都被叉掉了。

  后来找到了一个比较靠谱的结论:

  • 如果一个城市往后走能走到的范围内有油价比当前城市小的城市,就加足够多的油,开到最近的油价比当前城市低的城市。
  • 否则加满油,开到油价最低的城市。
  • 起点和终点要特殊处理。

  于是我写了一个暴力,交了上去,wa了。

  随后检查了一下,发现是暴力写错了,然后改了一下,ac了。

  接下来就是简单的优化部分了。求下一个比这个点油价低的城市可以用线段树,连续跳很多步可以用倍增。

  因为这个东西很多部分组成,我就每写一部分就交一次,最终花了两个小时通过了这道题。

  最后一个小时实在没事干,就开始刚t3。

  因为我太弱了,就选择了最简单的SUSAN。(其实是因为高级算法都需要微积分的知识,但我一点都不会)

  随便对着第一个样例调了一下参,就交上去了。

  pt分:\(100+100+30\)

DAY3

  顺利进入面试。

  因为首字母比较靠后,就等了四个小时。

  等待的过程中有几个学长来讲题了。然后我发现我d1t3是错的(虽然很接近正解)。

  感觉我要凉了。

  他还讲了一些熟练的算法竞赛选手的做题过程,可我一项都没做到。

  接着面试和去年不太一样,增加了一个朗读环节。就是一段英文,要你读+翻译。

  感觉我已经很凉了。

  然后又问我了两个问题,都是数学问题。

  感觉我已经凉了。

  有一道题非常有意思。

  “给你一个rand7(返回\([1,7]\)之间的一个整数),现在要你实现一个rand10,问你要怎么做。你可以先说一个简单的做法。“

  我:那就随机两次,得到一个\([1,49]\)之间的数,如果在\([1,10]\)内,就返回,否则就再随机一次。

  面试官:“还有没有更好的做法?”

  我:“。。。那就在\([1,40]\)之内就返回对应的数,否则继续随机。”

  面试官:”可以。“

  这是什么面试题啊。。。

  中午吃饭时听说进面试保底有THUSC门票,感觉还不错。

  下午讲了一堆奇怪的东西。

  接着就是发协议,顺利滚粗拿到无条件一本约。

总结

  感觉这次考得还可以。

  总共有五题可做,我感觉我过了三题,剩下的两题都拿到了不错的分数。

  剩下的那道不可做题也拿到了一点分。

  这次THUWC必须给好评。

  有pretest,所以做题非常爽,打出了平时改题的感觉。

  时限松的令人感动,不需要任何优化或卡常都可以通过本题。所以想到正解就可以大胆写。

  这两点可以区分开(我这种)暴力卡常选手和熟练的算法竞赛选手。

  最后sk,dcx,我拿到了一等约,zwl,myh拿到了二等约。myh真可怜。

THUWC2018游记的更多相关文章

  1. Thuwc2018 游记

    上一次没有滚粗的比赛已经是9个月前了QAQ.但我现在回过头去看那篇“zjoi游记”,却发现自己并不能从中得到收获.希望这次写下的东西,可以帮助我更好地准备即将到来的省选(雾) day 0 火车上浪10 ...

  2. 【游记】THUWC2018踹线记

    Day1. 早上九点多报道,然后就是试机.一开始有一些懵,没看清门外的通知,操作起来各种懵逼.不过提前适应过了在Linux下面编程,所以问题不大.调了gedit的界面,试了一下对拍,敲了一道试机题,然 ...

  3. 【20161203-20161208】清华集训2016滚粗记&&酱油记&&游记

    先挖坑(这个blog怎么变成游记专用了--) 已更完 #include <cstdio> using namespace std; int main(){ puts("转载请注明 ...

  4. 【20160722-20160728】NOI2016滚粗记&&酱油记&&游记

    先挖坑 #include <cstdio> using namespace std; int main(){ puts("转载请注明出处:http://www.cnblogs.c ...

  5. NOIp2016 游记

    DAY -2 不要问我为什么现在就开了一篇博客. 本来想起个NOIp2016爆零记或者NOIp2016退役记之类的,但是感觉现在不能乱立flag了.所以就叫游记算了. 前几场模拟赛崩了一场又一场,RP ...

  6. NOIP2016游记

    只是游记而已.流水账. Day0:忘了. Day1:看完T1,本以为T2一如既往很简单,结果看了半天完全没有思路.然后看了一眼T3,期望,NOIP什么时候要考期望了,于是接着看T2.一开始我推的限制条 ...

  7. CTSC2016&&APIO2016滚粗记&&酱油记&&游记<del>(持续更新)</del>

    挖一波坑 #include <cstdio> using namespace std; int main(){ puts("转载请注明出处:http://www.cnblogs. ...

  8. 游记——noip2016

    2016.11.18 (day 0) 呆在家. 悠闲地呆在家.. 明后天可能出现的错误: 1)没打freopen.打了ctime: 2)对拍程序忘记怎么写了...忘记随机化种子怎么写了: 3)不知道厕 ...

  9. 【NOIP 2015 & SDOI 2016 Round1 & CTSC 2016 & SDOI2016 Round2】游记

    我第一次写游记,,,, 正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪里?正文在哪 ...

随机推荐

  1. 1、Django系列之web应用与http协议

    第1节:最简单的web应用程序 Web应用程序指供浏览器访问的程序,通常也简称为Web应用.应用程序有两种模式C/S.B/S.C/S是客户端/服务器端程序,也就是说这类程序一般独立运行.而B/S就是浏 ...

  2. 爬虫(三)之scrapy核心组件

    01-核心组件 ·五大核心组件的工作流程: 引擎(Scrapy) 用来处理整个系统的数据流处理, 触发事务(框架核心) 调度器(Scheduler) 用来接受引擎发过来的请求, 压入队列中, 并在引擎 ...

  3. Log4.Net 在Winform、MVC、ashx程序里的使用,ashx程序里使用异步

    最近做一个双11活动的,是一套相关的H5页面.本来以为难度不大,但是做下来几天还是遇到些问题.就总结一下吧,还是有收获的. 1.在H5页面中,有一个遮罩层,还是挺有意思的.直接用div+css控制遮罩 ...

  4. 多项式求值 n维多项式 Horner解法

    #include<iostream> using namespace std; template<class T> T ploy(T *coeff,int n,const T& ...

  5. AtCoder Beginner Contest 116 D - Various Sushi (贪心+栈)

    D - Various Sushi Time Limit: 2 sec / Memory Limit: 1024 MB Score : 400400 points Problem Statement ...

  6. Git更新本地仓库

    1.查看远程仓库git remote -v2.从远程获取最新版本到本地git fetch origin master:temp3.比较本地的仓库与远程仓库的区别git diff temp4.合并tem ...

  7. RestTemplete

    RestTemplete是由spring提供的,可以用来模拟浏览器进行服务调用的封装好的Api,和Apache 的HttpClient功能相同,在分布式系统中可以用来服务之间的调用. 开发步骤: 1. ...

  8. 一、npm基础

    一.什么是npm? npm 是模块管理工具,可以下载.更新第三方模块,也可以发布自己的模块共替他人使用,主要目的在于分享和重用代码: 二.下载安装node,更新npm node 下载网址  https ...

  9. java编程规范(持续更新)

    1:非空判断 错误例子: if(user.getUserName().equals("hollis")){ } 这段代码极有可能在实际运行的时候跑出NullPointerExcep ...

  10. 50分钟学会Laravel 50个小技巧(基于laravel5.2,仅供参考)

    转载请注明:转载自 Yuansir-web菜鸟 | LAMP学习笔记 本文链接地址: 50分钟学会Laravel 50个小技巧 原文链接:< 50 Laravel Tricks in 50 Mi ...