本来想补上一次,然后懒得补了 忘掉了
马拉松
拿到手觉得是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分)