入门DP练习赛第二次爆炸记

本来想补上一次,然后懒得补了 忘掉了

马拉松

拿到手觉得是SB

f[i][j]表示通过第i个检查点后且已经跳了j个检查点时的最小时间

然后………………然后就暴力顺推

然后就炸了(手动和DFS对拍了几次,都没有出错,这只能说明非酋了)

养周奕博

拿到题的感觉是这样的:

这NM什么题

看完之后感觉要排个序,不然感觉无从下手啊。

排完序之后:这NM什么玩意儿,感觉要套个完全背包啊。

下面没有了

Bessie的派

(这题了不得,n搞了个500W)

只有a和b两种派,感觉很像黑皮书上的拍卖(其实就是拍卖改成询问最大值)

然后就很开心地写了个记忆化搜索:

	if (s>n) return;
	if (s>=ma) ma=s;
	if (!jl[s][zt]) jl[s][zt]=true;
	 else return;
	dfs(s+a[1],zt);
	dfs(s+a[2],zt);
	if (zt==0) dfs(s/2,1);

dfs的第一个参数表示目前的饱胀值(这翻译真是惊天地泣鬼神),第二个参数表示有没有喝过水:0表示没喝过,1表示喝过

本来以为会被n500Wab1的极限数据卡掉的,结果数据最大n就5W。

(这题数据是真好,输出n54分)


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值