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

日照市网站建设_网站建设公司_轮播图_seo优化

广州cms模板建站,wordpress显示相关文章,山西省网站,网站建设上市公司正题 题目链接:https://jzoj.net/senior/#contest/show/3011/2 题目大意 n1n1n1个连续的地方#xff0c;每个地方有(a,b,c)(a,b,c)(a,b,c)。 从000开始#xff0c;每次往前选择一个不超过LLL的位置#xff0c;跳到那里并选择中间不包括起点的位置中ccc最大的地方获取这个位…正题 题目链接:https://jzoj.net/senior/#contest/show/3011/2 题目大意 n1n1n1个连续的地方每个地方有(a,b,c)(a,b,c)(a,b,c)。 从000开始每次往前选择一个不超过LLL的位置跳到那里并选择中间不包括起点的位置中ccc最大的地方获取这个位置的a,ba,ba,b。 最后要求aaa的值和bbb的值比值最大。 解题思路 显然的0/1分数规划问题二分答案midmidmid把价值变为a−b∗mida-b*mida−b∗mid然后求价值最大。 考虑dpdpdp先预处理出每个位置的cic_ici​能影响到的位置(前面的最近一个比它大的ccc)。 然后dpdpdpfif_ifi​表示走到iii时最大价值。 枚举一个iii,我们现在要计算fif_ifi​然后定义wjw_jwj​表示从jjj跳到iii时需要战斗的地方的价值。 然后用一颗线段树维护fff的区间最大值和fwfwfw的区间最大值之后我们每次单点修改fff区间修改www即可。 时间复杂度O(100nlog⁡n)O(100n\log n)O(100nlogn)这里进行了100100100次二分。 codecodecode #pragma GCC optimize(2) %:pragma GCC optimize(3) %:pragma GCC optimize(Ofast) %:pragma GCC optimize(inline) #includecstdio #includecstring #includealgorithm #define lowbit(x) (x-x) using namespace std; const int N3e410; const double eps1e-7; int n,l,c[N],h[N],last[N]; double a[N],b[N],f[N],w[N]; struct Tree_Array{int t[N];void Change(int x,int val){while(xn){t[x]val;xlowbit(x);}}int Ask(int x){int ans0;while(x){ansmax(ans,t[x]);x-lowbit(x);}return ans;} }Ta; struct Seq_Tree{double f[N*4],w[N*4],lazy[N*4];void ReBuild(){for(int i0;i4*N;i)f[i]w[i]-1e9,lazy[i]0;return;}void Merge(int x){f[x]max(f[x*2],f[x*21]);w[x]max(w[x*2],w[x*21]);return;}void Downdata(int x){if(lazy[x]0) return;w[x*2]f[x*2]lazy[x];w[x*21]f[x*21]lazy[x];lazy[x*2]lazy[x*21]lazy[x];lazy[x]0;return;}void ChangeF(int x,int pos,int L,int R,double val){if(LR){f[x]val;return;}Downdata(x);int mid(LR)1;if(posmid) ChangeF(x*2,pos,L,mid,val);else ChangeF(x*21,pos,mid1,R,val);Merge(x);return;}void ChangeZ(int x,int l,int r,int L,int R,double val){if(LlRr){lazy[x]val;w[x]f[x]val;return;}Downdata(x);int mid(LR)/2;if(rmid) ChangeZ(x*2,l,r,L,mid,val);else if(lmid) ChangeZ(x*21,l,r,mid1,R,val);else ChangeZ(x*2,l,mid,L,mid,val),ChangeZ(x*21,mid1,r,mid1,R,val);Merge(x);return;}double Ask(int x,int l,int r,int L,int R){if(LlRr)return w[x];Downdata(x);int mid(LR)/2;if(rmid) return Ask(x*2,l,r,L,mid);if(lmid) return Ask(x*21,l,r,mid1,R);return max(Ask(x*2,l,mid,L,mid),Ask(x*21,mid1,r,mid1,R));} }T; bool check(double x){for(int i1;in;i)w[i]a[i]-b[i]*x;T.ReBuild();T.ChangeF(1,0,0,n,0);for(int i1;in;i){T.ChangeZ(1,last[i],i-1,0,n,w[i]);f[i]T.Ask(1,max(0,i-l),i-1,0,n);T.ChangeF(1,i,0,n,f[i]);}return f[n]0; } int main() {scanf(%d%d,n,l);for(int i1;in;i){scanf(%lf%lf%d,a[i],b[i],h[i]);c[i]h[i];}sort(c1,c1n);int munique(c1,c1n)-c-1;for(int i1;in;i){h[i]m-(lower_bound(c1,c1m,h[i])-c)1;last[i]Ta.Ask(h[i]-1);Ta.Change(h[i],i);}double l0,r1000000;for(int i1;i100;i){double mid(lr)/2.0;if(check(mid)) lmid;else rmid;}double ans(lr)/2;int loc0;while(ans10) ans/10,loc;while(ans1) ans*10,loc--;printf(%.9lfe,ans);if(loc0) printf(%03d,loc);else printf(%04d,loc);return 0; }
http://www.lebaoying.cn/news/11498.html

相关文章:

  • 网站集约化平台建设分析建设部人才交流中心网站
  • 网站开发相关参考文献资料温州建站方案
  • 比特币支付网站建设做手机app用什么软件
  • app开发cms网站开发自己名字怎么设计logo
  • 漂亮的手机网站模板下载详情页设计教程
  • 网站模板编辑六安网新闻
  • 网站结构是体现的建设网站好公司简介
  • 陕西省建设工程质量监督局网站做项目的网站
  • 怎么做自己的网站主页免费微信小程序开发官网
  • 网站维护建设招标怎么做网站从0做到权重7
  • 动态手机网站怎么做长春做网站网站
  • 做网站程序员都要先做维护么比较好的软文发布平台
  • DW做的网站加载慢wordpress实现文章目录
  • 湖南营销型网站建设 干净磐石网络深圳做网站比较好天涯
  • 如何做网站二维码做导购网站赚钱
  • 团购网站大全做相册广州做企业网站找哪家公司好
  • 昆明建网站公司广州南沙区建设局网站
  • 云企网站建设开发wordpress主题下载资源
  • 免费视频素材下载的网站门户网站好处
  • 国外最好的设计网站如何广告推广
  • 上海市建设安全协会官方网站wordpress wap主题
  • 电子商务网站系统建设实训心得google手机官网
  • 文山州住房和城乡建设网站如何利用站群做网站
  • 汕头网站搜索优化seo优化厂家
  • 网站代搭建维护渭南市住房和城乡建设部网站
  • 互联网网站建设哪家好the_post() wordpress
  • 网站建设询价函seo1视频发布会
  • 网站设计公司排名前十好的做问卷调查的网站
  • 太原建设网站网站开发的方法有哪些
  • 网站面包屑导航设计特点源码商城网站源码