The 2010 ACM-ICPC Asia Chengdu Regional Contest 的几个题目

声明:本博菜,只做水。

题目网址:
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3416
比赛网址:
http://acm.zju.edu.cn/onlinejudge/showContestProblems.do?contestId=319

【Problem C】
 水题,直接按题目意思写即可。

【Problem E】
 题目并不难:以相同的命令控制两个迷宫,求最少命令序列。
 思路也容易想到,把两个球的坐标看成一个状态就行了,其余就是简单的广搜了。
 问题是: 这题有很多小限制,例如最小字典序,节点的生成。非常考验编程的基本功。
 可惜,我好像弄了2-3个小时。


【Problem F】
 定义:
 F(x) = max( Si(x) ) , 其中 Si(x) = ai*x^2 + bi*x  + ci . 这里 0<=ai 。
 稍微观察一下,即可发现F(x)是一个纯单调函数或者单峰函数。速度三分法水.....
 只是这里特别注意精度问题,经测试,当 eps > 1e-9 时,果断WA 。
【Problem G】
 常用思路: 2_SAT + 二分。
 这里 2_SAT模型中的 <a , ~a> 对应于 x[i] 取 0 或者 1 。
 互斥条件是 : x[a[dep]] + x[b[dep]] == c[dep] 。
 图中的点数为 2*n , 边数最多为 m 。 复杂度 O(m*log(m))。
 对答案进行二分即可。


【Problem J】
 最大费用最大流  or 最佳匹配算法 ( KM 算法)。
 设标准答案串为 T , 学生答案串为S 。
 算法设计:
 (1). 分别统计<t,s>的对数为f(t,s),其中 t 属于 T , s 属于 S 。
 (2). X = {A,B,..,Z} , Y = {A,B,..,Z}.
      以 X 集和 Y 集建一个二分图。
      对每一对<t,s> 从 X 中的字母 t 连一条边至 Y 集中的s , 边权为 f(t,s) 。
 (3). 求二分图的最优匹配 ( KM算法 or 最大费用最大流 ) 即答案。
 


posted on 2010-11-14 00:25 IronOxide 阅读(962) 评论(0)  编辑 收藏 引用


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


<2010年11月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

导航

统计

常用链接

留言簿

随笔分类

随笔档案

ACMer

方向

搜索

最新评论

阅读排行榜

评论排行榜