题意略过,口胡正解

对于每个节点i,我们求出每个与i相连的节点的权值和s,那么i的贡献就是∑d[j]*(s-d[j])

求最大就排个序咯

#include<stdio.h>
#include<vector>
#include<algorithm>
#define M 10007
using namespace std;
int n,d[200010],mx=0,sum=0;
vector<int> G[200010];
inline bool c1(int a,int b){ return d[a]>d[b]; }
int main(){scanf("%d",&n);for(int x,y,i=1;i<n;++i){scanf("%d%d",&x,&y);G[x].push_back(y);G[y].push_back(x);}for(int i=1;i<=n;++i) scanf("%d",d+i);for(int S,i=1;i<=n;++i){if(G[i].size()<2) continue;sort(G[i].begin(),G[i].end(),c1);mx=max(mx,d[G[i][0]]*d[G[i][1]]); S=0;for(int j=0,z=G[i].size();j<z;++j) S+=d[G[i][j]];for(int j=0,z=G[i].size();j<z;++j) sum=((1ll*(S-d[G[i][j]]+M)*d[G[i][j]])%M+sum)%M;}printf("%d %d\n",mx,sum);
}

转载于:https://www.cnblogs.com/Extended-Ash/p/9477329.html

Jzoj3931【NOIP2014day1官方数据】联合权值相关推荐

  1. NOIp 2014 #2 联合权值 Label:图论 !!!未AC

    题目描述 无向连通图G 有n 个点,n - 1 条边.点从1 到n 依次编号,编号为 i 的点的权值为W i ,每条边的长度均为1 .图上两点( u , v ) 的距离定义为u 点到v 点的最短距离. ...

  2. [NOIP2014]联合权值

    NOIp2014提高组 [题目描述] 无向连通图G 有n 个点,n - 1 条边.点从1 到n 依次编号,编号为 i 的点的权值为W i   ,每条边的长度均为1 .图上两点( u ,  v ) 的距 ...

  3. P1351 联合权值[鬼畜解法]

    题目描述 无向连通图 G 有 n 个点,n−1 条边.点从 1 到 n 依次编号,编号为 i 的点的权值为 Wi​,每条边的长度均为 1.图上两点 (u,v) 的距离定义为 u 点到 v 点的最短距离 ...

  4. 联合权值 NOIP2014 提高组 Day1 T2

    codevs 3728 联合权值 题目描述 无向连通图G 有n 个点,n - 1 条边.点从1 到n 依次编号,编号为 i 的点的权值为W i ,每条边的长度均为1 .图上两点( u , v ) 的距 ...

  5. [Luogu 1351] NOIP2014 联合权值

    [Luogu 1351] NOIP2014 联合权值 存图,对于每一个点 \(u\),遍历它的所有邻接点.以 \(u\) 为中转点的点对中,\((x,y)\) 的联合权值 \(w_x \cdot w_ ...

  6. 【学术篇】luogu1351[NOIP2014 提高组]联合权值

    一道提高组的题..... 传送门:题目在这里.... 现在都懒得更自己的blog了,怕是太颓废了_ (:з」∠) _ 好久没做题了,手都生了.(好吧其实是做题方面手太生了) 这题我都不想讲了,把代码一 ...

  7. 洛谷 1351 联合权值

    [题解] 每个点维护各个儿子的前后缀最大值.权值和,这样就可以统计儿子之间相乘的答案.然后每个节点再乘它的祖父的权值去更新答案即可. 1 #include<cstdio> 2 #inclu ...

  8. 洛谷P1351 联合权值(树形dp)

    题意 题目链接 Sol 一道很简单的树形dp,然而被我写的这么长 分别记录下距离为\(1/2\)的点数,权值和,最大值.以及相邻儿子之间的贡献. 树形dp一波.. #include<bits/s ...

  9. P1351 联合权值

    为了写一写LCA,我就按照标签找--结果这道题我写完竟然没用LCA--真是神奇... 很多人(包括我),首先就想到了要枚举每一个点,再枚举任意这个点的两个儿子,可是显然O(n2)会T-- 其实我们只要 ...

最新文章

  1. python中非怎么表示_Python中非英语文本的标记化
  2. 联想台式计算机设置双层密码,联想电脑怎样设密码?联想电脑设置密码方法步骤【图文】...
  3. 基于TCP的Socket通讯
  4. 自学java 第十章内部类(二)
  5. 进入前端行业之前我们需要了解什么,明白这些就可以
  6. Mac(不限于)中几个有内涵的工具
  7. 免费送《你的知识需要管理》签名书活动,秒杀
  8. 如何用计算机制作公式,常用的那些软件能做公式编辑器
  9. C++11nullptr
  10. 纯干货:手把手教你用Python做数据可视化(附代码)
  11. java blazeds,java web开发学习-8 BlazeDS
  12. NVIDIA驱动报错解决方案
  13. document操作自定义属性
  14. C#自定义控件添加到工具箱:
  15. 网站数据采集器-文章采集工具-关键词文章采集工具
  16. 基于SSM框架的仿天猫商城项目(前端+后台)
  17. 秦储一行拜访陕西省文联和陕西新华出版传媒集团
  18. IDM Computer Solutions(UltraEdit V26.10.0.30、UltraCompare V18.10.0.78、UEStudio、UltraFTP==) 全系列最新破解
  19. KVM远程迁移启动报错
  20. 数据结构之KH[第五,六章] -->选择题 (二)

热门文章

  1. FlatBuffers初探
  2. ubuntu下创建eclipse桌面快捷方式
  3. 21.使用委托表达回调
  4. Husband的忏悔书(IT攻城狮)
  5. JSF框架在NetBeans下的编码
  6. ASP的Server.UrlEncode和Asp.Net的Server.UrlEncode的返回结果不同
  7. Windows下的网卡Teaming
  8. 保证相同类型的MDI子窗体只会被打开一次的方法
  9. C# 集合类(四):Hashtable
  10. 自然语言处理之jieba分词