入门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分)


猜你喜欢

转载自blog.csdn.net/fsl123fsl/article/details/79973329