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

网站开发分为几个方向建设通类型网站叫啥

网站开发分为几个方向,建设通类型网站叫啥,杭州工商注册,新闻稿撰写正题 题面链接:https://www.luogu.com.cn/problem/CF932F 题目大意 nnn个点的一棵树#xff0c;从xxx跳到yyy#xff08;要求yyy在xxx的子树中#xff09;会产生Ax∗ByA_x*B_yAx​∗By​的代价#xff0c;求每个节点出发跳到某个叶节点的最小代价。 解题思路 考虑dpdpdp的…正题 题面链接:https://www.luogu.com.cn/problem/CF932F 题目大意 nnn个点的一棵树从xxx跳到yyy要求yyy在xxx的子树中会产生Ax∗ByA_x*B_yAx​∗By​的代价求每个节点出发跳到某个叶节点的最小代价。 解题思路 考虑dpdpdp的话那么有fxfyAx∗Byf_xf_yA_x*B_yfx​fy​Ax​∗By​这个式子可以考虑斜率优化若y1y_1y1​比y2y_2y2​优那么有fy1−fy2By1−By2≥Ax\frac{f_{y_1}-f_{y_2}}{B_{y_1}-B_{y_2}}\geq A_xBy1​​−By2​​fy1​​−fy2​​​≥Ax​ 也就是我们对于每个节点要维护一个子树里所有点构成的一个下凸壳。 考虑树上启发式合并CDQCDQCDQ我们要求一个序列使得被贡献的点排在贡献点的后面。维护一个序列每次我们保留重子树的序列然后再加入其它轻子树的序列当到一个节点的头顶上是一条轻边时我们就对这个序列跑一次CDQCDQCDQ来维护凸壳然后清空序列。需要注意的是对于二次扫描轻子树的节点需要标记不能在CDQCDQCDQ分治中被修改答案。 时间复杂度O(nlog⁡2n)O(n\log^2 n)O(nlog2n) codecodecode #includecstdio #includecstring #includealgorithm #includestack #define ll long long using namespace std; const ll N1e510; struct node{ll to,next; }e[N*2]; ll n,tot,ls[N],a[N],b[N],f[N],siz[N],son[N]; ll cnt,q[N],p[N],v[N],st[N],rfn[N]; void addl(ll x,ll y){e[tot].toy;e[tot].nextls[x];ls[x]tot;return; } void dfs(ll x,ll fa){siz[x]1;for(ll ils[x];i;ie[i].next){ll ye[i].to;if(yfa)continue;dfs(y,x);siz[x]siz[y];if(siz[y]siz[son[x]])son[x]y;}return; } bool cmp(ll x,ll y) {return a[x]a[y];} bool cMp(ll x,ll y) {return (b[x]b[y])?(f[x]f[y]):(b[x]b[y]);} double slope(ll x,ll y) {return (double)(f[x]-f[y])/(b[x]-b[y]);} void cdq(ll l,ll r){if(lr)return;ll mid(lr)1,cnt1l-1,cnt2mid;for(ll il;ir;i)if(rfn[p[i]]mid)q[cnt1]p[i];else q[cnt2]p[i];for(ll il;ir;i)p[i]q[i];cdq(l,mid);ll tot0;for(ll il;imid;i){if(b[p[i]]b[p[i-1]]i!l)continue;while(tot1slope(st[tot-1],st[tot])slope(st[tot-1],p[i]))tot--;st[tot]p[i];}for(ll imid1;ir;i){if(v[p[i]])continue;while(tot1slope(st[tot-1],st[tot])-a[p[i]])tot--;ll xp[i],yst[tot];f[x]min(f[x],f[y]a[x]*b[y]);}cdq(mid1,r);sort(pl,p1r,cMp);return; } void calc(ll x,ll fa){p[cnt]x;rfn[x]cnt;v[x]1;for(ll ils[x];i;ie[i].next){ll ye[i].to;if(yfa)continue;calc(y,x);} } void solve(ll x,ll fa,ll top){for(ll ils[x];i;ie[i].next){ll ye[i].to;if(yfa||yson[x])continue;solve(y,x,y);}if(son[x])solve(son[x],x,top);else f[x]0;for(ll ils[x];i;ie[i].next){ll ye[i].to;if(yfa||yson[x])continue;calc(y,x);}p[cnt]x;rfn[x]cnt;v[x](!son[x]);if(xtop){sort(p1,p1cnt,cmp);cdq(1,cnt);cnt0;}return; } int main() {scanf(%lld,n);for(ll i1;in;i)scanf(%lld,a[i]);for(ll i1;in;i)scanf(%lld,b[i]);for(ll i1;in;i){ll x,y;scanf(%lld%lld,x,y);addl(x,y);addl(y,x);}memset(f,0x3f,sizeof(f));dfs(1,1);solve(1,1,1);for(ll i1;in;i)printf(%lld\n,f[i]);return 0; }
http://wiki.neutronadmin.com/news/89816/

相关文章:

  • 怎么设计网站规划方案数字媒体技术就业方向
  • 提供网站建设方案服务p2p 网站开发
  • 网站要怎么做的吗陕西城乡住房建设部网站
  • 网站建设人员的分工做网站看百度脸色
  • 哪里建设网站比较好网站建设需要注意的关键细节
  • 网站域名变更怎么查顺德大良那里做网站好
  • 做网站需要注意哪些如何快速做企业网站包括商城
  • 淄博网站排名seo大连网站建设企业
  • 包头移动官网网站建设网站地图怎么做
  • HTML电影订票网站开发做网站备案与不备案的区别
  • 海口网站优化wordpress 主题 支付宝
  • 网站建设合同英文软件开发工具平台
  • 上海做网站 公司瑞安做网站建设哪家好
  • 织梦cms零基础做网站搜狐做网站
  • 怎么制作网站店铺国土局网站建设情况
  • 企业网站在ps里做吗dw做的网站设计
  • 深圳做网站优化报价wordpress插件如何开发
  • 济南做网站企业在线工具网站
  • 北京网站开开发公司电话谷歌网站建站
  • 中山网站建设联系电话优秀网页设计导航
  • 新手学做网站书广科网站开发
  • 陕西省建设总工会网站即时通讯软件
  • 土地流转网站建设报告怎么查找一个网站开发时间
  • 怎样用网站做淘宝客推广wordpress 问答主题
  • 九江网站建设优化公司广州平面设计招聘
  • 建设银行软件官方网站下载网站关键词怎样做优化
  • cf刷枪网站怎么做的网站建设投资风险分析
  • 沈阳市绿云网站建设怎么在网上做装修网站
  • 郑州专业旅游网站建设百雀羚网站建设模版
  • 建筑网片铁丝规格新塘网站seo优化