BUAA Training 2014.03.29 Fukuoka-2011

题目真的都不错但是训练的时候结果不怎么好..

A切掉迅速干掉BDF三个简单题后在E,G,J间玩了三个小时泥巴……

以后这样真不好啊。。


http://acm.hust.edu.cn/vjudge/contest/view.action?cid=42606#overview


A:略

B:一个甜甜圈上有字符,从每个字符出发8个方向走能得到一堆字符串,求出现次数>1的最长串

范围很小,暴力找出所有字符串,按字典序排好序,用相邻的LCP更新答案。

C:给你一段密文,和组成密文的单词,求单词与密文是否存在唯一的字母两两置换的关系。

爆搜……范围很小,枚举每个密文对应的单词,如果方案数大于1就可以停止搜索了。

D:一个无向图,有些点是加油站,车有油量上限,求两点间的最短路。

关键点只有加油站和起点中点,求出它们的单源最短路后用floyd判定。

E:报复社会题目,一个二十面体在滚来滚去,求从初始状态滚到另外一个状态的最小步数。

只要能人肉出状态转移……只要能人肉出状态转移……就是一个BFS了

F:经典题,n个字符串串成一条链,求链的最小长度

预处理出把一个串接到另一个串后面增加的长度,然后状压DP

G:扫雷,给你不超过15个数字,问满足数字的限制至少需要埋多少个雷。

轮廓线动态规划……逐格转移。就是开一个10^15的状态……用map来处理就好,加上一些明显的剪枝,状态不是一般的稀疏。

训练的时候想了很长时间,都没敢这么去写……

H:报复社会

I:报复社会

J:求从一个点出发到另外一个点再回来的最小代价,点上的代价只收一次,边上的每次路过都要收。

每个点有海拔,去的时候不许下坡,回来的时候不许上坡。

有点像双调旅行商问题,加上海拔限制的话。

实际上就是这么做,题目有相同海拔的点不超过10个,状态就用f[50][50][1024]来存。

(事实上这题我还没写过……


Code:

https://github.com/Sd-Invol/shoka/tree/master/TheWaySoFar-Training/2011-Fukuoka




  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值