USACO 5.4&&5.5解题报告

Canada Tour

题目翻译:http://www.nocow.cn/index.php/Translate:USACO/tour

可以视为两个人同时从起点出发,中间不相交,最终到终点时两人走过的城市数量的和的最大值。f[i][j]表示甲到达i城市,乙到达j城市时的城市数量和,则:
f[i][j]=f[j][i]=max{f[i][k]}+1(k,j之间相连)
ans=max{f[i][n]}(i,n之间相连)


Telecowmunication

题目翻译:http://www.nocow.cn/index.php/Translate:USACO/telecow

类似于Pollutant Control的最小割问题,将每个点拆成两个点i1,i2,这两点之间连边,为了使边数最少且字典序最小,使每条边的容量=(101+1)*5000+i。然后使c1到所有与它相连的点的边的容量为inf,使所有与c2相连的点到c2的边的容量为inf。用Dinic求解即可。


Picture

题目翻译:http://www.nocow.cn/index.php/Translate:USACO/picture

线段树+扫描线,每次+1前将为0的端点的边长加入ans,每次-1后将为0的端点的边长加入ans。


Hidden Password

题目翻译:http://www.nocow.cn/index.php/Translate:USACO/hidden

将字符串复制为原来的2倍。采用比较法,设i,j分别为两个待比较字符串的起点位置,k表示以s[i]和s[j]为起点的串的公共前缀,一直对比字符串中s[i+k]与s[j+k]的大小,若s[i+k]>s[j+k],则i移到j的位置,j的位置+1;若s[i+k]

Two Five

题目翻译:http://www.nocow.cn/index.php/Translate:USACO/twofive

记忆化搜索。
对于编码转单词,要从小向大枚举最开始的几个字母,若这种情况下的数量>=编码,则枚举下一位;否则枚举下一个字母;
对于单词转编码,对每一位枚举所有字典序小于当前码的字母,计算剩余字母的方案数,加进ans,直到枚举完最后一位输出ans。
记忆化搜索求的就是在已固定一部分字母的情况下的方案数。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值