THUWC&&NOIWC2018随笔

随便写写,不喜勿喷

THUWC

Day1

报到日,高铁延误差评,天气凉凉差评,水卡要押金差评,宿舍没电差评,阳台宿舍两种WiFi差评。
试机发现了之前fst的一道题,结果再写一次还是fst了QwQ

机试第一场,这么快就开始考试感觉要凉。
T1看了几眼就会了,觉得很不可思议还多看了几眼。
实在没毛病就写了然后WA了
啊原来变成OI赛制了(后知后觉)
眼调了一下发现边界写错了,判掉就过了pp
感觉有点虚还是写了个对拍(所以说OI赛制没卵用)
T2先写了一个猎奇方法,然后觉得很不可优化就又写了个O(N^2)Dp,然后发现这个Dp似乎可以用启发式合并的方法优化,很高兴开始写,然后发现有问题GG
冷静下来发现我只需要改变一些值就可以变成线段树合并的样子,然后很高兴写完一交,TLE,过了中间的部分。
仔细想想发现我是区间修改的线段树合并,直接会把所有标记下传一次合并变成O(n)……
想了一会觉得如果在两个节点都为当前的叶子并且都有标记我可以直接合并当前的两个标记。
然后就跑过了pp
一看时间只剩半个小时赶紧写了T3的O(n^3)暴力,并且猜了一个L=1的结论
然后又过了PP???????
哇出题人真厉害.jpg
最后一点时间检查了一下感觉没毛病就不管了
Day1自信估分230,似乎没多少人做出T2??

本来怕电脑没电就没打飞机
然后发现了阅览室这种操作,emmmmm

Day2

拍合照的时候一直往右挤什么操作,结果我一个人的体重都是靠右脚撑起来的。
寒风一直往脸上挂,感觉凉凉
Orz同寝室两位dalao

机试第二场,挂上一堆flag强行不慌
T1感觉是什么倍增的,先跳
T2感觉是什么容斥的,先跳
T3。。。。。。。。。。。。。。。。。。。。
先开T1,想出结论之后发现不会倍增做法emmmm
苦想2h无果写个40分跑
再看T2,发现其实很不可做,想写n=2没写出来,10分走人
最后1.5h玩T3,啊challenge好好玩(雾)然而没有多高分
最后70分滚粗(pp)

晚上准备了一下自我介绍然后颓废
并不觉得自己能进面试,毕竟T1似乎过了一大片。。。。

Day3

早上起晚了一点,昏昏沉沉来到报告厅等待结果。
结果进了?同寝室的两位dalao也都进了面试。
等待的时候发现又来了一群人,似乎一半以上的人都进了面试的说。

面试没什么毛病,由于天气太冷读口语有点结巴,自我介绍由于紧张顺序有点乱,翻译什么的大概意思能懂,出了道小学生数学题给我smg
乱放我的包差评,害得我去和保安谈人生

讲课似乎bitcoin相关,不是很懂

下午发约,感觉有条还是没问题的,不过念到我名字的时候还是很兴奋。
结果给了我一个无条!!!!!
这就很舒服了。

然而很多人凉了,高二全部爆炸,而我这种高一蒟蒻就水到了约,也许有人会有点不服吧。。。
听说pku发约发的很疯,连没进面试的人都有约,还听说广附初三dalao拿到了无条Orz

即使有约也不要放松,继续努力吧!!

NOIWC

Day -1

颓废+打飞机
卡在地e死活过不去(我手残),于是开始打FTG

Day 0

报到日,打FTG,然而打不过电脑

Day 1

刚开始的课我还是有做笔记的,贴上来
lzz:
滑雪板问题
不知道要滑多少天
租cost1和买costB的价格有差异
第t天买,最差花费B+t-1

竞争分析
Ca在线时的cost
Cmin离线时的cost
k-competitive
对于所有情况Ca<=kCmin+O(1)
考虑最坏情况
随机算法考虑期望情况
使k尽量小

回到滑雪板
t=B时,为2-competitive
其他情况都比2要大

online load problem
有n个机器,m个任务,每个任务需要时间ci
给每个任务分配机器,使得花费时间最大的机器所花费时间最短

这是个NPC问题,下界为Cmin>=max(∑ci/m,ci)
贪心算法:每次选择当前时间最小的机器工作
这是个2-competitive算法
证明,如果超过2Cmin,最后一个工作时长<=B
又长度超过2B,B>=ave,一定存在另一个机器比ave要小
于是安排到了一个不是最短的机器上

让某些机器的工作时长比较小
目前最优1.625-competitive

Finance Problem
有一个货物,每一天有价钱,在[m,M]范围内,但是不确定
每一天可以选择卖或不卖,最大化价格

设置一个r,一旦出现p>=r就接受

两种情况,一种是第一天出r,第二天出M,M/r
一种是第一天是r-δ,第二天是m,r/m
r=sqrt(nm),令φ=M/m,是sqrt(φ)-competitive

Paging Problem
一个长度为k的缓存器,有一个页面的访问顺序,如果一个页面已经在缓存器中不付出代价,否则代价为1
弹出最远被访问的那个。。。
LRU算法k-competitive
这是确定性算法的下界

随机算法,掉线ing
随机化的在线算法?

随机算法解决Finance Problem
可以卖一部分,按比例收费
按[2^jm,2^(j+1)m]划分区间,第一个落在某个区间的人卖给他1/k的货物
2 log φ-competitive

回到原问题
每个区间按1/k的概率卖
第一次出现,后面按1/(k-1),1/(k-2)

凉凉

后面的中美OI差异还是很资瓷的说

下午myy当众水群太强辣
然而英文课件+芙兰话双杀GG
中间的CF命题故事还是很棒棒的

晚上员交没去,只去听了交互题

Day 2

九老师的课很棒棒啊,有steam小游戏送(记得去年是动态壁纸?
似乎每道题都有记录(大概)
PA2017

T1n个二进制数相加之后有多少位
暴力是O(n)

T2每个人在ti时刻来吃,做菜需要d,做完之后必须立刻给人吃
m次询问每次给出d,求最小等待时间
tj-d*j < ti-d*i,类似斜率优化式子,把d排序,离线做。

T3在一棵树上走,一条路径(u,v)的权值为v的点权-边权和。
第0天在1号点,每天选择一个权值最大的路径走过去,求这条路径。
支持单点修改点权边权
点分治,复杂度O(n log^2 n)

T4n*n的黑白网格,四联通,黑色部分本来联通
染黑k个白格,使得黑色部分仍联通,求方案数。
n<=3000,k<=4
分成几类,与黑色格子相邻的白点为关键点。
选择的白点分为很多个联通块,每个联通块都需要包含至少一个关键点。
分类讨论:
考虑每种拆分方案
每个联通块都需要至少包含一个关键点
好难写啊

T5求N以内最大的所有质因子属于S的数
Si<=100,N<=1e18
meet in the middle
均匀选择,大概只有1e7左右
时间太慢
预处理,1~1e6的答案,大部分>1e12,加速
空间不够
限定一部分<=1e9,存的下来
交换之后再做一遍

T6求字典序第k小的,长度为n的,逆序对个数为n*(n-1)/4的排列。
Fi,j,后i位,逆序对数为j的方案数
考虑确定了前缀,可以直接算出前后两部分产生的逆序对数,和前面产生的逆序对数
那么可以确定后面产生的逆序对数,直接查表,可以二分
k << n!,考虑优化
fi,j只有很小的一段前缀和后缀是小于k
直接暴力求小部分,复杂度约为O(n)

T7一个长度为n的数列,进行了m次单点修改,把第i次修改之后的序列记为Ai,把Ai按字典序排序
主席树维护哈希值,二分求LCP,可以O(log n)比较大小,排序O(n log^2 n)
从下往上做,每个点把所有的版本排序,叶子直接sort,往上归并O(n log n)

——————————————————————难题分割线————————————————————

T8有n个和坐标轴平行的正方形叠成了一个长方形,给出所有正方形的左下角求一种方案。
确定上边界和右边界。。。。
枚举左上角右边的正方形->上边界可以确定
转化问题,上边界、左边界和下边界,求右边界
依次枚举可,可以线性确定
->线性时间把所有正方形填进去->维护上轮廓,找最高的一条边往下扩展
求一个点下面第一个点->离散化后哈希

T9?????
n*m的网格,每个点有高度,相应而言有一个等高线,相邻两点的高度差不超过1
给出一些等高线,可以继续添加等高线,使得等高线的嵌套最多
现场撕逼~~~~
一条等高线限制三条线的高度相同
最外圈为0问最高点高度
考虑两个等高线的高度差为最近格子的距离差
差分约束系统->最短路
完全图最短路???n<=50000
时间限制10s
O(n^2)能过。。。
还要求内部最大值
可以二分
每条边的限制相当于一个矩形

T10
n*m的矩形,有一些位置是障碍,有一些位置上有人,保证非障碍是4联通
在线进行操作,将一个人移动到相邻位置,在一个位置上放障碍,如果障碍会使人不联通则不进行
输出0/1,q<=1e6
网格图->平面图->对偶图
每个人代表一个二进制,并查集维护环
射线法求出每条边的权值,判断异或是否为2^k-1/0
射线改折线,人的移动只需要改动开头一段

T11
分布式(可并行)算法
n*m的0/1网格,可以访问某个位置的值,求有多少个全1矩形
n,m<=75000,100个线程

n*m做法很简单
按列并行

后面全程懵逼,不能冬眠差评

下午zzx的课,勉强听了一点就全程掉线
P与NP,NP完备,NP-hard
暴力+剪枝[划掉]
n皇后问题,分类讨论(n%4)
所有解暴力(正确性,准确性,高效性)
数独,DXL算法
分支定界法A*,IDA*
图染色,可以做到O(2^n*n)
带权最大独立集,只枚举极大独立集
O(1.1888^n)?????
掉线

Day 3

出现了,电音之王逸松!!!
虽然没听太懂但是好欢乐的说~果然不卡常的松松松真可爱
3h学懂FFT
论FFT如何做一名千万英雄[划掉]

Part A.傅里叶变换和信号处理
信号->观察->传感器,测量
f(t)=sin(1000*2π*t) (我听出了这个周期[划掉])
儿化音算啥?
基本运算,函数的基本运算(卷积?)
卷积满足交换律,分配率,结合律
单位斜边信号:R(t)=min(r,max(0,t))
单位阶跃信号:u(t)=[t>0]-[t<0]
单位矩形脉冲信号:Gt(t)=[|t| < r/2]
傅里叶级数(周期信号)
f(t)=a0+∑(ai*cos(ai*w1*t)+bi*sin(bi*w1*t))
非周期信号?
1:截取一段作为“周期”
2:假设周期可以一直增加,一直到∞
傅里叶变换
凉凉

DFT,IDFT

下午immortalCO的课,因为中午打机打过头了眯了一会儿,感觉血亏,不过后半段都在听,感觉很棒棒
还有杜教讲的超(quan)实(tui)数,不错我至少听懂了链的做法。

晚上试机玩了一下交互就溜了

Day 4

假老师的课,虽然能听懂但是就是不会做的感觉~
第一个分清wxh和wzd的人

假老师讲图论
Part A 生成树相关

mst的三种求法

三道劝退题,TC hard ,Code Festival Final,UOJ #167(B开头的算法例题怎么都是这道)

求强连通分量的两种算法
kosaraju算法
1:对原图进行dfs,得到出栈序列
2:将所有边反向
3:按出栈序列反向dfs,每次dfs到的点就是一个强连通分量

支配树(dominator-tree)

杂题,向dalao低头

下午xmk的计算几何,IOI杂题倒是有在听(性感宽爷,在线翻车)
寄蒜几盒完全不想听开始冬眠

晚上员交又没去

Day 5

终于到考试日了,感觉很虚
看完题发现暴力分可以上百,而且没有什么毒瘤题,试题好评
权衡一下决定先开T2,随手写了个3^n的50分发现过不了大样例?
眼调了一下发现没有判联通,判掉就过了(然而这样判其实是不符合题意的,结果我误打误撞就这么和出题人心意相通了QwQ)
然后开T1,先写了个暴力对拍,然后写了个44分的三棵树一样,然后写了个68分的点分,互拍没锅就去开T3了。
T3发现暴力就可以过掉50分,感觉很良心,想了一下随机化就有65分很开心的写了。
不过不会调交互题,于是全程输出调试。

最后30分钟咸鱼的检查,把T1的数组开大了几倍。

下午看成绩很懵逼,60+50+40????
T1发现T了两个十万的点很奇怪,难道我点分写错了?
T3中途WA,对着数据一看,哇,我数组开小了QwQ
明明是30w我只开了10w QwQ
知道自己不可能Au了,一念之差啊~~~

晚上看文艺表演,cjk女声很资瓷啊,杜教唱歌好好听~
中途wzd wxh傻傻分不清,《退役的你》《我的一个Oier朋友》很棒棒
求背景图包(车万实力猖獗)
还有唱瑶姐的《千之缘》的,感觉全程都是在听伴奏
(明明是个老太婆曲子还挺好听的)

Day 6

组团去博物馆看千年女神被美哭
司机师傅怠惰啊~~~
下午发奖果然只有Ag,就差一点很不爽
Get到新姿势:浙江市,送你一块牌牌~

Day 7

不存在的

总结

这次Wc非常良心,部分分给的很足(然而我还是fst了)
果然我这种菜鸡要想拿Au只能等高二来了~
还是要继续努力啊

你可能感兴趣的:(心情,总结)