WC2015流水账

THU那四场考试没考好,只有20+名。这也许是我OI生涯中最后一场吧(已确认是最后一场),真是感慨万千。

day0

搬进浙大宿舍404房间(神房间号),四个人一间。中午发现学军伙食相当良心,是我参加的OI活动中最良心的

day1

徐寅展

讲了一些动态维护图的连通性以及最小生成树的算法,太深了,基本上只听懂第一个维护图的连通性的算法。下面就简单讲一下这个算法吧。

首先,这个算法是在线算法,其时间复杂度是m lg^2。离线算法可以做到m lg,用LCT维护最大生成树就行了(边权为边被删除的时间)。

大概做法是,维护\(\lg{n}\)个生成森林,满足第i个森林是第i+1个森林的子集,并且其每棵树的大小不超过\(2^i\)。然后,考虑删除一条树边,这时需要尝试寻找一条替换边来连接断开的两块。假设在第i个森林中删边,设断开的两块中较小的那块大小为k,显然\(k \leqslant 2^{i - 1}\),所以可以将其加入第i - 1个森林。我们将所有这些边降级到i - 1。由于每条边至多降级lgn次,总共至多降级mlgn次。每片森林需要用LCT维护,另外还要维护和某一块连接的所有边,故复杂度还要乘上一个lg。

吴争锴

日程表上写的是“ACM题目选讲”,没想到成了Primality Test。讲了一个神一般的AKS算法,根本听不懂。只记得这个算法的发现证明了PRIMES in P,因为它可以在多项式时间内判定素性。但是这玩意儿有什么用?朴素实现复杂度据说是\(\Omega{\lg{n}^{10}}\),加了优化似乎能够做到\(\Theta{\lg{n}^{6}}\),但还是比Miller Rabin慢到哪里去了。

还有就是,Miller Rabin似乎可以改造为确定性算法,但其依赖于黎曼猜想的正确性。

有印象的大概就这些,其他时候也许我在睡吧。

day2

俞鼎力

Tree Decomposition,乍看还以为是链剖。其实是一个神爆了的玩意儿,叫做图的“树分解”。这东西之前从来没有听说过啊,看来OI正在蓬勃发展(似乎很多OI中常用的算法都是某神犇从paper通过WC的渠道引进的)。

大概就是把一张图弄成一棵树,树上的节点对应于原图的一个集合(不一定互不相交),并且原图中的每个节点,树中仅有一个极大的非空的包含它的连通块。

定义一张图的树宽为该图的所有树分解中,最大的节点集合的大小的最小值。

对于树宽的上界为一个小常数的图,一些问题可以通过构造这样的树分解,然后用树形dp在多项式时间内高效地解决。例如最大独立集和哈密顿回路。总的来说就是,因为每个集合的大小可以看做常数,所以即使我们乱搞,复杂度也是多项式的。

另外还讲了几个近似算法。这个好理解,但是感觉也不好写,而且难说在OI中有什么用。

董宏华

我很早就听说拟阵这个东西可以用来证明贪心的正确性,因为我个人总是不太会贪心的证明,所以一直都比较想了解拟阵,但由于种种原因一直都没有学。现在终于学了,感觉还是很厉害的。

只简单说一下。由拟阵的性质(遗传性和增广性,即其中任意一个独立集都可通过增广变成某个基),容易证明求拟阵的权值最大(或最小,由于基的大小是一定的)的基的贪心算法的正确性。只需要从大到小考虑每个元素,尝试将其加入当前集合,如果加入后为独立集则加入,否则跳过就行了。

例如Kruskal算法,其实就是求图的环拟阵的权值最小的基(其中的独立集便是不成环的边集)。

day3

胡伟栋

讲计算几何,总体较简单。不过我还是有收获的。我现在知道扫描线有多强大了。

沈洋

构造题选讲。我感觉构造题都是谜一样的,一般不看题解根本不会,看了题解后往往又觉得是自己傻逼了。这堂课大概又感受了一下神构造题的威力吧。

day4

范浩强

又是randomization。前面部分讲Goldreich-Levin算法,听不懂。后面讲了交互式证明,比较好玩。不过由于讲的有用的东西过于神犇,所以这堂课也谈不上有多大收获。

陈立杰

陈老师这次的主题出人意料地正常:OI中的计数题(记得去年是函数式数据结构,而且还是英文讲义)。讲了许多值得收藏的好题。

day5上午考试,感觉精神状态还是不错的。

先看了第一题,要求k小割,感觉不好做,没思路,于是看了第二题。发现题目极长并且是fhq出的,所以直接跳到第三题(事实证明这是正确的决定)。第三题是提交答案题,要求对给出的一些逗比算法进行优化,用另一个算法得出相同的结果。这些算法都是用代码给出的,所以先要读懂它们在干什么。

我很快搞出了1,2,4,5这四个点,3是问前n项的i次方和,我想到的方法有:1.求伯努利数 2.带值求出几个点后进行多项式插值,可以用高斯消元或拉格朗日插值法 3.差分后用矩阵快速幂

我想了一会儿,感觉用第三个比较靠谱。于是就用这个搞出了3。

然后看了第一题数据范围,发现有10分暴力,中间有40分的特殊情况。对于这40分我第一感觉是拿堆搞,但是想了想感觉又不好弄。稍不注意状态就会暴涨。不过我还是想到了靠谱的做法,对每个状态只需要记最后的不是最优的位置以及它是选B还是AB都选,另外记下方案的权值就行了。然后每个状态有至多3个后继状态,选择将后面一个变成选B,或者将当前的换成后面一个,或者如果当前是B,将当前的换成选AB。能够想到这样搞从初始状态到每个选择方案的途径都是唯一的,并且每个状态的后继状态都更劣。所以拿堆搞搞就好了。有用的状态总数不超过3k。

然后所剩时间就不多了。第二题感觉是没希望把题意理解正确了,第三题看了后几个点发现有两个点可以搞点部分分出来,所以又搞了几下。

结果50 + 0 + 51。第三题中间有两个点的得分比预计的少,总共比预计少了3分。应该是爆了精度了。这个也不太好检查因为没有给checker。

听说最高分是160+,看来是要退役了。

day6

上午游西湖。下午高端论坛,然后闭幕式。

闭幕式上终于宣布了十五人名单。不出所料,我就这样退役了。

今年一等奖分数线没上70,比去年低了不少。

转载于:https://www.cnblogs.com/jasonyu/p/wc2015.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
wc2015】未来程序是指在未来可能出现的新型计算机程序,具备更加先进、高效、智能的功能和特点。随着科技的不断进步,程序开发也将朝着更加智能化、自动化的方向发展。 首先,未来程序可能具备更强大的人工智能能力。目前的人工智能已经可以实现语音识别、图像识别等基本功能,未来程序有望拥有更高级的人工智能技术,能够更加深入地理解和分析人类语言、情感和意图,甚至能够进行自主的学习和创新。 其次,未来程序可能会具有更高效的算法和计算能力。随着计算机硬件技术的不断改进,未来程序可能会利用更先进的算法和更强大的计算资源,从而提高程序的执行速度和效率,使得软件能够更好地适应各种应用场景。 另外,未来程序可能会更加注重安全性和隐私保护。随着网络的普及和信息的大规模交换,数据安全和隐私问题越来越受到关注。未来程序将会加强对数据的保护,采用更安全的数据传输和存储技术,确保用户的信息和隐私不受侵犯。 最后,未来程序可能会更加注重可持续发展和环境友好。随着全球环境问题的日益严重,未来程序可能会采用更加节能、环保的设计和开发方式,减少对能源和资源的消耗,从而更好地满足可持续发展的需求。 总之,未来程序将是更加智能、高效、安全、环保的计算机程序,能够更好地满足人们的各种需求和期待。随着科技的不断进步,未来程序的发展潜力将是无限的。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值