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

兰州学校网站建设专业网站制作的费用

兰州学校网站建设,专业网站制作的费用,网站方案策划书18000字,设计师培训班费用D. Perishable Roads 题意简述#xff1a; 一个 nnn 个点的完全图 以 iii 为根节点时 询问 能构造的树的 ∑d(x)\sum d(x)∑d(x) 最小是多少。 d(x)d(x)d(x)#xff1a; xxx 到根节点边权值最小值 MOONPIE题解 首先有一个显而易见的错误贪心#xff1a; 不妨假设以root\t…D. Perishable Roads 题意简述 一个 nnn 个点的完全图 以 iii 为根节点时 询问 能构造的树的 ∑d(x)\sum d(x)∑d(x) 最小是多少。 d(x)d(x)d(x) xxx 到根节点边权值最小值 MOONPIE题解 首先有一个显而易见的错误贪心 不妨假设以root\text{root}root为根节点重构树定义u→vu\to vu→v这条路径是所有路径的最小值则我们肯定希望这样构造路径 root→u→v⇝others\text{root}\to u\to v\leadsto \text{others}root→u→v⇝others 也就是把其他所有点都往vvv上连构成一棵树这样其他点的代价都是wu→vw_{u\to v}wu→v​不难得出所求为wroot→u(n−2)×wu→vw_{\text{root}\to u}(n-2)×w_{u\to v}wroot→u​(n−2)×wu→v​。 容易想到反例也就是如果wroot→uw_{\text{root}\to u}wroot→u​非常非常大则会不是最优值 不过我们只需要找到一条路径root⇝u\text{root}\leadsto uroot⇝u 代替root→u\text{root}\to uroot→u不难想到答案一定是这种情况root⇝u→v⇝others\text{root}\leadsto u\to v\leadsto \text{others}root⇝u→v⇝others其中root⇝u\text{root}\leadsto uroot⇝u是一条链而v⇝othersv\leadsto \text{others}v⇝others是一棵树 对于链上路径的值有一个结论详细可查看RingweEH root→⋯→i→j→k→u→v\text{root}\to\dots\to i\to {j}\to k\to u\to vroot→⋯→i→j→k→u→v 这条链上的边权一定单调递减且只可能存在一例例外即有可能wi→j≤wk→uw_{i\to j}\leq w_{k\to u}wi→j​≤wk→u​ 对于计算答案来说树上的点v⇝othersv\leadsto \text{others}v⇝others对答案的贡献是(n−1−x)×wu→v(n-1-x)×w_{u\to v}(n−1−x)×wu→v​而链上的点由于单调递减只需要从root\text{root}root跑一边最短路即可由于不知道链上边的个数xxx只需要利用花费提前的思想跑最短路前把每条边减去wu→vw_{u\to v}wu→v​即可对于例外情况特殊考虑一下即可。 #includecstring #includeiostream #includealgorithm using namespace std; using lllong long; constexpr int N2010; int g[N][N],n; ll d[N]; bool st[N]; void dijkstra(int S) {memset(d,0x3f,sizeof d);memset(st,0,sizeof st);d[S]0;for(int i1;in;i)//例外for(int j1;jn;j)d[i]min(d[i],g[i][j]*2ll);for(int i1;in;i){int t-1;for(int j1;jn;j)if(!st[j](t-1||d[t]d[j])) tj;st[t]1;for(int j1;jn;j) d[j]min(d[j],d[t]g[t][j]);} }int main() {ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);cinn;int S1,mn0x3f3f3f3f;memset(g,0x3f,sizeof g);for(int i1;in;i)for(int ji1;jn;j){cing[i][j];g[j][i]g[i][j];if(mng[i][j]) mng[i][j],Si;}for(int i1;in;i)for(int j1;jn;j) g[i][j]-mn;dijkstra(S); for(int i1;in;i) cout1ll*(n-1)*mnd[i]\n; }要加油哦~
http://www.pierceye.com/news/88245/

相关文章:

  • 企业软件网站建设中国成熟iphone
  • 重庆建立公司网站androidstudio安装教程
  • 设计个网站需要怎么做建设集团有限公司简介
  • 商城网站建设缺点瑞安营销网站建设
  • 山东网站定制策划广告网址
  • 自己开网站需要什么最后两年会出妖
  • 高校学风建设专栏网站建设一批适合青少年的网站
  • 新竹网站wordpress 301怎么写
  • 企业网站管理系统演示平台用jsp做网站的体会
  • 域名不转出可以做网站吗万州网
  • 辽宁市营商环境建设局网站精准营销五个步骤
  • 网站新闻标题字数网站的内容与功能设计
  • 网站模版 免费下载影响网站速度的因素
  • 做百度推广一定要有自已网站百度推广做网站吗
  • 可口可乐网站建设策划方案做网络竞拍的网站需要什么
  • 免费做ppt的网站有哪些wordpress ajax 接口
  • 中文网站建设教程焦作建设网站哪家好
  • 站长工具app官方下载wordpress 文件夹改名
  • 把网站内容全删掉 在重新建立会不会被k江苏中南建设集团网站是多少
  • 网站负责人备案采集照具体要求网站后台管理系统需求
  • 公司网站域名备案流程网站关键词优化原理
  • 海外sns网站网络软文营销的案例
  • 网站开发什么语言比较快网站域名所有权 查询
  • 阿里云网站域名申请谷歌浏览器打开就是2345网址导航
  • 西充建设部门投诉网站wordpress分类目录 模版
  • 哈尔滨h5模板建站资源机
  • 莆田网站建设多少钱销项税和进项导入是在国税网站做吗
  • 昆明网站制作定制公司网站的开发流程有哪几个阶段
  • 德惠网站网站建设问题调查
  • 网站源码下载 支付二维码怎么弄百度一下主页官网