2017.5.6 联合权值 思考记录
来源:互联网 发布:玲珑加速器mac版 编辑:程序博客网 时间:2024/05/17 07:13
曾经感觉非常难的题 现在一遍过了、、
主要是有前缀和的思想 和取最大值和次大值的乘积由小技巧;;
只保存一个最大值 ,和每个数*,直到这个最大值被更新。。
由于每次乘都是在1~当前这个数的最大值再乘这个数,所以如果它不是最大值,则一路统计了答案,如果是 ,则这个1~当前数的最大值必然是最优的次大值
码:
#include<iostream>#include<cstdio>using namespace std;#define N 200005#include<vector>vector<int>v[N];int x,y,i,n,j,w[N],ans,daan;int main(){scanf("%d",&n);for(i=1;i<n;i++){scanf("%d%d",&x,&y);v[x].push_back(y);v[y].push_back(x);}for(i=1;i<=n;i++)scanf("%d",&w[i]);for(i=1;i<=n;i++){if(v[i].size()==1)continue;int lmax=0,qsum=0;for(j=0;j<v[i].size();j++){ans=max(lmax*w[v[i][j]],ans);lmax=max(lmax,w[v[i][j]]);qsum+=w[v[i][j]];qsum%=10007;}for(j=0;j<v[i].size();j++){daan+=(w[v[i][j]]*(qsum-w[v[i][j]]));daan%=10007;}}printf("%d %d",ans,daan);}
0 0
- 2017.5.6 联合权值 思考记录
- 2017.5.6 表达式的值 思考记录
- 2017.5.6 子矩阵 思考记录
- 2017.6.6 数表 思考记录
- 2017.9.6 礼物 思考记录
- 2017.9.6 外星人 思考记录
- 2017.10.6 单词 思考记录
- NOIP2014 联合权值
- NOIP2014联合权值
- NOIP2014联合权值
- Codevs 联合权值
- 联合权值
- 【noip2014】联合权值
- Vijos1096 联合权值
- NOIP2014 联合权值
- 【NOIP2014】 联合权值
- 联合权值
- noip2014联合权值
- 除非另外还指定了 TOP 或 FOR XML,否则,ORDER BY 子句在视图、内联函数、派生表、子查询和公用表表达式中无效。
- Java 注释模板设置 -- 个人总结
- remap
- linux下C语言编程操作MySQL数据库
- 文件
- 2017.5.6 联合权值 思考记录
- 计算机网络(自顶向下方法)(原书第4版)课后复习题解答(第五章)
- NLP技术的应用及思考
- RoiPac-Wiki
- bzoj1100: [POI2007]对称轴osi
- IntelliJ IDEA搭建Spring Boot的小Demo
- 0420-序选择器
- Linux c_mysql编程
- 回文素数