首页 > 其他分享 >【P8179】【EZEC-11】Tyres(背包问题,决策单调性,分治)

【P8179】【EZEC-11】Tyres(背包问题,决策单调性,分治)

时间:2022-10-29 11:35:57浏览次数:88  
标签:Tyres 11 商店 题面 EZEC leq 商品 代价 单调

这道题的题面很像,但是做法不同。

题面:

有 \(n\) 家商店,第 \(i\) 家商店一共可以卖出 \(m_i\) 件商品,其中第 \(j\) 件商品购买所需的代价为 \(a_{i,j}\)。特别地,对于第 \(i\) 家商店,如果想要购买该家商店的商品,需要出 \(a_{i,0}\) 的入场费。

求出购买 \(m\) 件商品所需的最小总代价。

\(n\leq500\),\(m\leq 2\times 10^5\),\(t\leq 500\),\(1\leq a_{i,1}<a_{i,2}<\cdots<a_{i,m_i}\)。其中 \(t=\max_i a_{i,0}\)。

题解:

先把 \(a_{i,0}\) 加在第一个商品上。

对于商店 \(i\),其第 \(t\) 个商品之后的任意商品的价格一定比前 \(t\) 个商品中任意商品的价格都高。

那么考虑将所有商品分为两部分:第一部分是每家商店的前 \(t\) 个商品,第二部分是剩下的商品。

设 \(f_a\) 表示第一部分选 \(a\) 个商品的最小代价,\(g_b\) 表示第二部分选 \(b\) 个商品的最小代价。注意到,\(\min_a f_a+g_{m-a}\) 就是答案。

对于 \(f_a\),可以考虑使用决策单调性优化 DP 做到 \(O(n^2t\log nt)\)(注意商品数范围是 \(O(nt)\) 的)。对于 \(g_b\) 显然贪心地选,可以 \(O(m\log n)\) 求出。

标签:Tyres,11,商店,题面,EZEC,leq,商品,代价,单调
From: https://www.cnblogs.com/ez-lcw/p/16838353.html

相关文章