Luogu P4643 阿狸和桃子的游戏
题解 传送门
既然题目要求的是差值
所以对于减数和被减数同时加上一个相同的数是毫无影响的 (详情参考人教版六年级上册数学教材)
所以不妨把边权分成两半
分别加给两个顶点
然后,直接每次选最大的点就好了
代码
#include<bits/stdc++.h>
using namespace std;
#define re register
#define ll long long
#define in inline
#define get getchar()
#define db double
in int read()
{
int t=0,x=1; char ch=get;
while ((ch<'0' || ch>'9') && ch!='-') ch=get;
if (ch=='-') ch=get,x=-1;
while (ch<='9' && ch>='0') t=t*10+ch-'0',ch=get;
return t*x;
}
const int _=1e5+5;
db w[_];
int n,m;
int main()
{
n=read(),m=read();
for(re int i=1;i<=n;i++)
w[i]=read();
for(re int i=1;i<=m;i++)
{
db x=read(),y=read(),z=read();
w[int(x)]=w[int(x)]+(z/2),w[int(y)]=w[int(y)]+(z/2);
}
sort(w+1,w+n+1);
db sum1=0,sum2=0;
for(re int i=n;i>=1;i--)
{
if(i%2==n%2)
sum1+=w[i]; //阿狸先行动
else
sum2+=w[i]; //桃子再行动
}
cout<<sum1-sum2<<endl;
return 0;
}
Luogu P4643 阿狸和桃子的游戏的更多相关文章
- 【BZOJ2563】阿狸和桃子的游戏(贪心)
[BZOJ2563]阿狸和桃子的游戏(贪心) 题面 BZOJ 题解 边权平均分给两个点就好了. #include<iostream> #include<cstdio> #inc ...
- 【bzoj2563】阿狸和桃子的游戏(贪心+构造)
题目传送门:bzoj2563 先膜拜一波PoPoQQQ的题解:BZOJ 2563 阿狸和桃子的游戏 贪心 其实我们可以这样看:把一条边的权值均分到两个端点,那么取到两个端点就能得到这条边的边权,如果只 ...
- BZOJ2563阿狸和桃子的游戏
2563: 阿狸和桃子的游戏 Time Limit: 3 Sec Memory Limit: 128 MBSubmit: 952 Solved: 682[Submit][Status][Discu ...
- Bzoj 2563: 阿狸和桃子的游戏 题解
2563: 阿狸和桃子的游戏 Time Limit: 3 Sec Memory Limit: 128 MBSubmit: 970 Solved: 695[Submit][Status][Discu ...
- Bzoj2563 阿狸和桃子的游戏
Time Limit: 3 Sec Memory Limit: 128 MBSubmit: 701 Solved: 496 Description 阿狸和桃子正在玩一个游戏,游戏是在一个带权图G= ...
- BZOJ2563: 阿狸和桃子的游戏 贪心
Description 阿狸和桃子正在玩一个游戏,游戏是在一个带权图G=(V, E)上进行的,设节点权值为w(v),边权为c(e).游戏规则是这样的: 1. 阿狸和桃子轮流将图中的顶点染色,阿狸会将顶 ...
- 【bzoj2563】阿狸和桃子的游戏 贪心
题目描述 阿狸和桃子正在玩一个游戏,游戏是在一个带权图G=(V, E)上进行的,设节点权值为w(v),边权为c(e).游戏规则是这样的:1. 阿狸和桃子轮流将图中的顶点染色,阿狸会将顶点染成红色,桃子 ...
- BZOJ——2563: 阿狸和桃子的游戏
http://www.lydsy.com/JudgeOnline/problem.php?id=2563 Time Limit: 3 Sec Memory Limit: 128 MBSubmit: ...
- 洛谷P4643 [国家集训队]阿狸和桃子的游戏(思维题+贪心)
思维题,好题 把每条边的边权平分到这条边的两个顶点上,之后就是个sb贪心了 正确性证明: 如果一条边的两个顶点被一个人选了,一整条边的贡献就凑齐了 如果分别被两个人选了,一作差就抵消了,相当于谁都没有 ...
随机推荐
- python安装和首次使用
安装: 1.安装python环境: 首先打开python官网,下载配置环境:www.python.org 点击上方downloads, 根据系统选择python环境下载 找到 windows x86- ...
- 提交 linux kernel 补丁流程备忘录
1. 订阅 linux 邮件列表 linux 邮件列表 Kernel Mailing Lists 是所有 linux kernel 开源贡献者协同工作的平台,可以通过向 VGER.KERNEL.ORG ...
- 在 Kubernetes 上部署 OpenStack 是什么体验
红蓝出 CP,OpenStack 和 Kubernetes 在一起会怎样? 背景 从去年开始就想深入地学习 Kubernetes,首先想到是在 OpenStack 上能比较轻松地玩转,所以去 尝试了 ...
- RabbitMQ小记(二)
1.RabbitMQ相关介绍 (1)RabbitMQ整体上是一个生产者和消费者模型,主要负责接收.存储.转发消息.RabbitMQ整体结构图如下: (2)生产者:发送消息的一方,生产者创建一条消息,发 ...
- Spring 配置文件AOP
1 <!-- 配置切面bean --> 2 <bean id="permAspect" class="com.tx.spring.aspect.Perm ...
- E: 无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用)
Linux下sudo apt-get install 安装时报错: 解决办法 1. 终端输入 ps -aux ,列出进程.找到含有apt'-get或者wget的进程, 直接sudo k ...
- Vue学习使用系列九【axiox全局默认配置以及结合Asp.NetCore3.1 WebApi 生成显示Base64的图形验证码】
1:前端code 1 <!DOCTYPE html> 2 <html lang="en"> 3 4 <head> 5 <meta char ...
- ANNdotNET中的视觉神经网络设计器
ANNdotNET简介 是一个在.net平台上进行深度学习的开源项目.NET Framework和.NET Core).该项目位于http://github.com/bhrnjica/anndotne ...
- 第五周:面向对象部分内容总结(5)---java设计规则
面向对象设计原则 1.开闭原则 开闭原则理解: 简单说就是一个软件实体支持扩展,不支持修改.就是在不改变源码的基础上,扩展其它的功能. 其实笔者认为,开闭原则无非就是想表达这样一层意思:用抽象构建框架 ...
- css做模糊处理
-webkit-filter: blur(9px); filter: blur(9px);