2563: 阿狸和桃子的游戏

Time Limit: 3 Sec  Memory Limit: 128 MB
Submit: 952  Solved: 682
[Submit][Status][Discuss]

Description

  阿狸和桃子正在玩一个游戏,游戏是在一个带权图G=(V, E)上进行的,设节点权值为w(v),边权为c(e)。游戏规则是这样的:
  1. 阿狸和桃子轮流将图中的顶点染色,阿狸会将顶点染成红色,桃子会将顶点染成粉色。已经被染过色的点不能再染了,而且每一轮都必须给一个且仅一个顶点染色。
  2. 为了保证公平性,节点的个数N为偶数。
  3. 经过N/2轮游戏之后,两人都得到了一个顶点集合。对于顶点集合S,得分计算方式为
  。
  由于阿狸石头剪子布输给了桃子,所以桃子先染色。两人都想要使自己的分数比对方多,且多得越多越好。如果两人都是采用最优策略的,求最终桃子的分数减去阿狸的分数。
 

Input

 输入第一行包含两个正整数N和M,分别表示图G的节点数和边数,保证N一定是偶数。
  接下来N+M行。
  前N行,每行一个整数w,其中第k行为节点k的权值。
  后M行,每行三个用空格隔开的整数a b c,表示一条连接节点a和节点b的边,权值为c。

 

Output

 输出仅包含一个整数,为桃子的得分减去阿狸的得分。

Sample Input

4 4
6
4
-1
-2
1 2 1
2 3 6
3 4 3
1 4 5

Sample Output

3
数据规模和约定
  对于40%的数据,1 ≤ N ≤ 16。
  对于100%的数据,1 ≤ N ≤ 10000,1 ≤ M ≤ 100000,-10000 ≤ w , c ≤ 10000。
 
题目大意:两个人分别对一个图的点染色。染到哪个点就会获得哪个点的价值,如果一条边的两端被同一个人染色,那么
这个人也会获得这条边的价值。
题解:贪心
把一条边的边权分给两端的点权,如果一条边的两端被两人选择,那么最后得分相减时会抵消,如果被一个人选择,那么
这条边的权值都会给他。好miao ya 
题解:
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#define maxn 10006
using namespace std; int n,m;
double sum1,sum2,w[maxn]; int main(){
scanf("%d%d",&n,&m);
for(int i=;i<=n;i++)scanf("%lf",&w[i]);
for(int i=;i<=m;i++){
int x,y,z;
scanf("%d%d%d",&x,&y,&z);
w[x]+=(double)(z/.);
w[y]+=(double)(z/.);
}
sort(w+,w+n+);
while(n){
sum1+=w[n--];
sum2+=w[n--];
}
printf("%.lf\n",sum1-sum2);
return ;
}
 

BZOJ2563阿狸和桃子的游戏的更多相关文章

  1. Bzoj2563 阿狸和桃子的游戏

    Time Limit: 3 Sec  Memory Limit: 128 MBSubmit: 701  Solved: 496 Description 阿狸和桃子正在玩一个游戏,游戏是在一个带权图G= ...

  2. BZOJ2563: 阿狸和桃子的游戏 贪心

    Description 阿狸和桃子正在玩一个游戏,游戏是在一个带权图G=(V, E)上进行的,设节点权值为w(v),边权为c(e).游戏规则是这样的: 1. 阿狸和桃子轮流将图中的顶点染色,阿狸会将顶 ...

  3. 【BZOJ2563】阿狸和桃子的游戏(贪心)

    [BZOJ2563]阿狸和桃子的游戏(贪心) 题面 BZOJ 题解 边权平均分给两个点就好了. #include<iostream> #include<cstdio> #inc ...

  4. 【bzoj2563】阿狸和桃子的游戏(贪心+构造)

    题目传送门:bzoj2563 先膜拜一波PoPoQQQ的题解:BZOJ 2563 阿狸和桃子的游戏 贪心 其实我们可以这样看:把一条边的权值均分到两个端点,那么取到两个端点就能得到这条边的边权,如果只 ...

  5. Bzoj 2563: 阿狸和桃子的游戏 题解

    2563: 阿狸和桃子的游戏 Time Limit: 3 Sec  Memory Limit: 128 MBSubmit: 970  Solved: 695[Submit][Status][Discu ...

  6. 【bzoj2563】阿狸和桃子的游戏 贪心

    题目描述 阿狸和桃子正在玩一个游戏,游戏是在一个带权图G=(V, E)上进行的,设节点权值为w(v),边权为c(e).游戏规则是这样的:1. 阿狸和桃子轮流将图中的顶点染色,阿狸会将顶点染成红色,桃子 ...

  7. BZOJ——2563: 阿狸和桃子的游戏

    http://www.lydsy.com/JudgeOnline/problem.php?id=2563 Time Limit: 3 Sec  Memory Limit: 128 MBSubmit:  ...

  8. 【bzoj2563】 阿狸和桃子的游戏

    题目 非常妙的题目,一看到就以为是一道博弈,之后就不会做了 正解非常巧妙,由于我们只需要求出最后两个人得分的差值,所以对于每一条边我们将其的权值拆成两边,分给其连接的两个点 如果这两个点被同一个人选择 ...

  9. luogu4643 [国家集训队]阿狸和桃子的游戏

    题目链接:洛谷 这道题乍一看非常的难,而且题目标题上的标签让人很害怕. 但其实这道题并不难写(只要想到了...emm) 因为我们只需要知道两个人得分之差,所以我们可以对条件进行变换. 我们将边权平分到 ...

随机推荐

  1. 自定义 ViewController 容器转场

    本文转载至 http://blog.csdn.net/yongyinmg/article/details/40621463 在话题 #5 中,Chris Eidhof 向我们介绍了 iOS7 引入的新 ...

  2. C - Common Subsequence

    C - Common Subsequence Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I ...

  3. 九度OJ 1206:字符串连接 (字符串操作)

    时间限制:1 秒 内存限制:128 兆 特殊判题:否 提交:4127 解决:1957 题目描述: 不借用任何字符串库函数实现无冗余地接受两个字符串,然后把它们无冗余的连接起来. 输入: 每一行包括两个 ...

  4. spring boot mysql和mybatis

    1 选择mysql驱动 <dependency> <groupId>mysql</groupId> <artifactId>mysql-connecto ...

  5. Computer Vision: Algorithms and ApplicationsのImage processing

    实在是太喜欢Richard Szeliski的这本书了.每一章节(after chapter3)都详述了该研究方向比較新的成果.还有很多很多的reference,假设你感兴趣.全然能够看那些參考论文 ...

  6. 阿里云CentOS7安装Docker

    买了阿里云主机,由于学生有优惠,玩起来确实爽. 系统版本: [root@lxd ~]# cat /etc/redhat-release CentOS Linux release 7.0.1406 (C ...

  7. QMessageBox简单使用

    首先要调用 #include <QMessageBox> 然后 QMessageBox msgBox; msgBox.setWindowTitle("错误"); msg ...

  8. vim下的ctags和taglist等的使用和配置

    1.ctags (1)到 http://prdownloads.sourceforge.net/ctags/ctags-5.6.tar.gz         下载ctags源码ctags-5.6.ta ...

  9. hadoop1.2.1 datanode 由于权限无法启动 expected: rwxr-xr-x

    /************************************************************ STARTUP_MSG: Starting DataNode STARTUP ...

  10. vi/vim滚动屏幕

    VIM帮助文档如是说 Q_sc Scrolling CTRL-E N CTRL-E window N lines downwards (default: 1) CTRL-D N CTRL-D wind ...