FFF Warm Up Contest 13 - NWERC 2011 [iSea]

Board: http://acm.hust.edu.cn:8080/judge/contest/view.action?cid=7589#rank


这套题目质量很不错。

难度都不大,但任何一道题都需要思考。


A k与n-k是对应的,只管小的。可以发现k的范围会很小,枚举一下,然后二分N。

数很大,java肯定可以,但是double足以。

B 这个题的关键是理解题目中的递归定义,是每次把n层的树拿来重构n+1层的,左子树都变成 1/(A+1),右子树则变成 1/A + 1

显然可以通过与1比大小得到当前的第一步,递归下去,可以发现 1/(A + 1) = (1 / (1/A + 1)),因此每次应该减掉交换一下

那些看图能看出规律的,我只能说,你自己懂得

C 线段树 或 树状数组,虚拟一些空格位置出来,每次放的位置就固定了,任务就变成了求两个最近的disk事件间空格的数目

D 这是一道非常赞的2-sat,一般的2-sat都比较裸,这是我见过的最隐蔽的2-sat题目了

考虑黑色格子,有四个事件,上,下,左,右,同时考虑上下或左右可以得到初步的限制,使每个黑色格子都有两个白色匹配

这个时候还需要解决白色格子同时被两个格子匹配的问题,加上这个限制,模型就OK了

只是点略多,一直RE。准备改非递归的时候,发现标程的cpp也re但java不re,果断改java过了 > <

E 水题,按结束时间合并相同的

F 不错的最小割,目的就是使 # 和 . 不连通,要么直接转化,要么割中间相连的边

G 题目的条件就是很多Di - Dj >= Dis的不等式,显然是个差分约束

点很少,可以直接floyd求出最小环,然后拓扑排序

H 没有SPJ,做法很简单,状态DP,先枚举所有可行的

I 和 J 貌似都不难,但这两天比赛略多,有空补上  (UNDONE)


总之欧洲题目还是很给力的,要去金华了,final前最后的现场赛热身,用力。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值