当前位置: 首页 > wzjs >正文

做三个月网站 广告收入seo成功案例分析

做三个月网站 广告收入,seo成功案例分析,软件开发外包多少钱,网页的动态效果Description 有一个体积为 C C C 的背包和若干种物品. 前 n n n 种物品,第 i i i 种体积为 v i v_i vi​,价值 w i w_i wi​,有 d i d_i di​ 件. 后 m m m 种物品,每种对应一个函数 f ( x ) a i x 2 b i x c i f(x)a…

Description

有一个体积为 C C C 的背包和若干种物品.
n n n 种物品,第 i i i 种体积为 v i v_i vi,价值 w i w_i wi,有 d i d_i di 件.
m m m 种物品,每种对应一个函数 f ( x ) = a i x 2 + b i x + c i f(x)=a_ix^2+b_ix+c_i f(x)=aix2+bix+ci,表示若选 x x x 体积的这件物品,价值为 f ( x ) f(x) f(x).(不选当作选 0 0 0 体积
选择一些物品,使得体积和不超过 C C C,求最大价值.

Limitations

1 ≤ n ≤ 1 0 4 1\le n\le 10^4 1n104
1 ≤ m ≤ 5 1\le m\le 5 1m5
1 ≤ C ≤ 1 0 4 1\le C\le 10^4 1C104
1 ≤ w i , v i , d i ≤ 1000 1\le w_i,v_i,d_i\le 1000 1wi,vi,di1000
∣ a i ∣ , ∣ b i ∣ , ∣ c i ∣ ≤ 1000 |a_i|,|b_i|,|c_i|\le 1000 ai,bi,ci1000
1 s , 128 MB 1\text{s},128\text{MB} 1s,128MB

Solution

不考虑后 m m m 件物品,那么就是一个多重背包,然而暴力跑 DP 铁定超时,需要优化.
多重背包一般有两种优化方式:二进制拆分和单调队列.
由于常数原因,我们选用二进制拆分,将每堆物品分成若干组,每组分别有 2 0 , 2 1 , ⋯ , 2 k − 1 , d − 2 k + 1 2^0,2^1,\cdots,2^{k-1},d-2^k+1 20,21,,2k1,d2k+1 个( k k k 是满足 n − 2 k + 1 > 0 n-2^k+1>0 n2k+1>0 的最大整数).
那么用这些组就可以组出 0 ∼ d 0\sim d 0d 个的所有选法,这样就转化成了 01 01 01 背包.

对于后 m m m 个物品,由于 m m m 很小,我们可以枚举给每个物品分配的体积,暴力更新.

总时间复杂度为 O ( C ∑ log ⁡ d i + m C 2 ) O(C\sum\log d_i+mC^2) O(Clogdi+mC2).

Code

1.15 KB , 1.83 s , 2.55 MB (in total, C++20 with O2) 1.15\text{KB},1.83\text{s},2.55\text{MB}\;\texttt{(in total, C++20 with O2)} 1.15KB,1.83s,2.55MB(in total, C++20 with O2)

#include <bits/stdc++.h>
using namespace std;using i64 = long long;
using ui64 = unsigned long long;
using i128 = __int128;
using ui128 = unsigned __int128;
using f4 = float;
using f8 = double;
using f16 = long double;template<class T>
bool chmax(T &a, const T &b){if(a < b){ a = b; return true; }return false;
}template<class T>
bool chmin(T &a, const T &b){if(a > b){ a = b; return true; }return false;
}signed main() {ios::sync_with_stdio(0);cin.tie(0), cout.tie(0);int n, m, c;scanf("%d %d %d", &n, &m, &c);vector<pair<int, i64>> goods;for (int i = 0, v, w, d; i < n; i++) {scanf("%d %d %d", &v, &w, &d);int t = 1;while (d) {if (d - t <= 0) t = d, d = 0;else d -= t;goods.emplace_back(t * v, 1LL * t * w);t <<= 1;}}vector<i64> dp(c + 1);for (auto [v, w] : goods) for (int k = c; k >= v; k--) chmax(dp[k], dp[k - v] + w);for (int i = 0, A, B, C; i < m; i++) {scanf("%d %d %d", &A, &B, &C);auto f = [&](int x) { return 1LL * A * x * x + 1LL * B * x + C; };for (int k = c; k >= 0; k--)for (int j = 0; j <= k; j++) chmax(dp[k], dp[k - j] + f(j));}printf("%lld", dp[c]);return 0;
}
http://www.dtcms.com/wzjs/440211.html

相关文章:

  • 网站建设技术合作合同seo网络营销外包公司
  • 张家界网站seoseo哪里有培训
  • 网站顶部怎么做新浪链接网站推广搜索
  • 辽宁营商环境建设局网站网络广告营销对应案例
  • 做门户网站的网络公司网络营销方式有哪些
  • 域名购买网站seo基础入门视频教程
  • 网站建设有什么岗位百度秒收录技术最新
  • 上海建设公司网站最新国内新闻50条简短
  • jquery网站模板下载网站服务器信息查询
  • 商业计划的网站建设费用360优化大师官方网站
  • 建设介绍网站上海专业排名优化公司
  • p2p网站建设时间阿里指数
  • 特效视频素材网站免费技能培训在哪里报名
  • 自己做家装设计网站aso关键词搜索优化
  • 企业建设网站的目的和意义游戏优化大师官网
  • 镇江网站建设个企业网站制作公司
  • 做网站需要学会哪些友情链接交易购买
  • 直播网站建设1个节点多少钱百度百家官网入口
  • 锦州做网站哪家好宁波百度快照优化排名
  • 县志中关于政府网站建设的驾校推广网络营销方案
  • 上海环球金融中心简笔画企业网站seo诊断工具
  • 怎样保存网站资料做证据谷歌seo和百度区别
  • wordpress ip锁定插件seo同行网站
  • 网页设计的发展前景如何seo快速排名软件app
  • 作品集展示的网站关键词优化一年的收费标准
  • 政务性网站制作公司引流获客工具
  • 小城镇建设网站参考文献个人接广告的平台
  • 网站的文章参考文献怎么做百度的网址
  • 网站建设的毕业论文的系统测试个人自己免费建网站
  • wordpress 置顶 插件seo服务的内容