ECNU_practise_Sennheiser

地址:acm.hust.edu.cn/vjudge/contest/view.action?cid=62706#overview


A:

两个人用进行n场比赛,赢得1分,否则输1分,问最后得分为k的有多少种情形。

先把它变成一个队列,记dp[i][j][k]表示到第i-1个数为止,a赢了j场,b赢了k场

显然,对于第i个数来说,他可以和前面剩下的匹配,即:

dp[i][j][k] += dp[i-1][j][k](第i个空着)

dp[i][j][k+1] += dp[i-1][j][k](第i个是b的)

dp[i][j+1][k] += dp[i-1][j][k](第i个是a的)

最后答案就是dp[i+1][(n+k)/2][(n-k)/2],特判一奇偶


B:

水题


C:

贪心,将龙的财富值从大到小取,取的时候,所有龙后面的公主-1,当为0的时候,即左边不能再取了。


D:

只要知道分为几个集合就可以了(从大到小排序之后的第k个数就是)


E:

水题


F:

直接暴力把每种组合记下来即可:

比如width=5 ht=3 len=10,排完序后直接二进制枚举一下就可以了


G:

贪心,先开始取左边的


H:

记忆化搜索或者拓扑排序


I:

数位dp,dfs(depth,n3,n5,e)表示从前到后搜索到第depth个数的时候,mod(3^b)=n3,mod(3^b)=n5 ,e=1表示当前>x,否则<=x 时的状态。


J:

二分答案就可以了


K:

水题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值