XMU 1613 刘备闯三国之三顾茅庐(一) 【并查集】
1613: 刘备闯三国之三顾茅庐(一)
Time Limit: 1000 MS Memory Limit: 128 MB
Submit: 99 Solved: 29
[Submit][Status][Web Board]
Description
刘备(161年-223年6月10日),字玄德,东汉末年幽州涿郡涿县,西汉中山靖王刘胜的后代。刘备一生极具传奇色彩,早年颠沛流离、备尝艰辛最终却凭借自己的谋略终成一方霸主。那么在那个风云激荡的年代,刘备又是如何从一个卖草鞋的小人物一步一步成为蜀汉的开国皇帝呢?让我们一起拨开历史的迷雾,还原一个真实的刘备。
公元207年冬至,当时驻军新野的刘备在徐庶的建议下,到南阳卧龙岗拜访诸葛亮。这是刘备第一次拜访诸葛亮的故事。三国演义记载的事,由于诸葛亮出游去了,导致刘备无功而返。然而据我考古发现,其实诸葛亮是抛出了如下的问题,想考察刘备本人的谋略、以确定其是否是自己要效忠的那个人:
由于战事频发,朝廷派兵往n(2<=n<=10000)个城镇押运粮草,但是沟通不顺畅,导致有些城镇粮草多运了,而有些城镇则少运了。由于战争的影响,一些道路被毁坏,但城镇之间仍有m(0<=m<=50000)条尚未损毁的道路,诸葛亮想知道是否有可能使得利用现有的道路,重新在城镇间运载粮草,使得每个城镇需要的粮草不多也不少?
刘备为人宽厚仁爱,但对此类问题也是束手无策,这时候就是是你表现的时候了。
Input
第一行包含两个整数n(2<=n<=10000) 和m(0<=m<=50000)。
以下n行,每一行包括一个整数,分别表示城镇0到城镇n-1多运的粮草,如果为负数,则表示少运了。保证输入中,这n个数和为0。
以下m行,每一行包含两个整数x,y(0<=x<y<=n-1),表示城镇x和城镇y存在一条道路。
Output
如果存在一种运载方案,输出POSSIBLE,否则输出IMPOSSIBLE。
Sample Input
100
-75
-25
-42
42
0 1
1 2
3 4
Sample Output
HINT
Source
by cjf
[Submit][Status][Web Board]
题目链接:
http://acm.xmu.edu.cn/JudgeOnline/problem.php?id=1613
题目大意:
N个点M条边,每个点有一个粮草值,正为多余负为缺少,问能否通过边运输粮草使每个点粮草相等。
题目思路:
【并查集】
将被边连通的点并查集归为一类。
然后统计被归为一类的点的权值和,如果都为0就是可行,否则不可行。
/****************************************************Author : CoolxxxCopyright 2017 by Coolxxx. All rights reserved.BLOG : http://blog.csdn.net/u010568270****************************************************/
#include<bits/stdc++.h>
#pragma comment(linker,"/STACK:1024000000,1024000000")
#define abs(a) ((a)>0?(a):(-(a)))
#define lowbit(a) (a&(-a))
#define sqr(a) ((a)*(a))
#define mem(a,b) memset(a,b,sizeof(a))
const double EPS=1e-8;
const int J=10;
const int MOD=100000007;
const int MAX=0x7f7f7f7f;
const double PI=3.14159265358979323;
const int N=10004;
const int M=100004;
using namespace std;
typedef long long LL;
double anss;
LL aans;
int cas,cass;
int n,m,lll,ans;
int a[N],fa[N],sz[N],sum[N];
int zhao(int aa)
{if(fa[aa]==0 || fa[aa]==aa)return aa;return fa[aa]=zhao(fa[aa]);
}
bool judge()
{int i;for(i=1;i<=n;i++){if(sz[i] && sum[i]!=0)return 0;}return 1;
}
int main()
{#ifndef ONLINE_JUDGEfreopen("1.txt","r",stdin);
// freopen("2.txt","w",stdout);#endifint i,j,k;int x,y,z;
// for(scanf("%d",&cass);cass;cass--)
// for(scanf("%d",&cas),cass=1;cass<=cas;cass++)
// while(~scanf("%s",s))while(~scanf("%d",&n)){mem(fa,0);mem(sz,0);mem(sum,0);scanf("%d",&m);for(i=1;i<=n;i++)scanf("%d",&a[i]);for(i=1;i<=m;i++){scanf("%d%d",&x,&y);x++;y++;int fx=zhao(x);int fy=zhao(y);fa[fy]=fx;}for(i=1;i<=n;i++){fa[i]=zhao(i);sz[fa[i]]++;sum[fa[i]]+=a[i];}if(judge())puts("POSSIBLE");else puts("IMPOSSIBLE");}return 0;
}
/*
////
*/
XMU 1613 刘备闯三国之三顾茅庐(一) 【并查集】相关推荐
- XMU 1611 刘备闯三国之卖草鞋 【贪心】
1611: 刘备闯三国之卖草鞋 Time Limit: 1000 MS Memory Limit: 64 MB Submit: 89 Solved: 47 [Submit][Status][Web ...
- XMU 1617 刘备闯三国之汉中之战 【BFS+染色】
1617: 刘备闯三国之汉中之战 Time Limit: 1000 MS Memory Limit: 128 MB Submit: 6 Solved: 5 [Submit][Status][Web ...
- 大话西游之王道考研数据结构第一讲---线性表的顺序表示
大话西游之王道考研数据结构第一讲---线性表的顺序表示 写在前面的话 王道考研数据结构是一本非常好的书,本系列所有的内容是按照其书进行讲述的,所以您可以以那本书作为主要内容,这个做参考. 大学时候,在 ...
- 商业智慧——三国职场人
<商业智慧:三国职场人生> 三国职场人生 找对你的老板 曹操VS袁绍,跟对老板(1) 三国典故:张绣认曹操做老大 张绣公司是个小公司,数次击败曹操,在宛城占了一点地盘.张绣知道,小公司生存 ...
- 第二十一章 刘备脱险
第二十一章 刘备脱险 <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /& ...
- 刘备学Android Word文档下载地址和序言
序言 刘备学Android,采用了一种简单娱乐的方式去介绍了Android的一些基础知识,适用于刚开始学习Android的同学们. 刘备学Android,在内容上,稍微有点落后现在的Android版本 ...
- 六张图看透孙权和刘备管理的成与败
孙权18岁接过父兄基业,掌管东吴政权,直到71岁去世,其间长达53年,东吴政权始终坚如磐石. 赤壁之战是东吴集团的重要转折,抵挡住了曹操国企的恶意收购之后,孙权更深刻的确立了企业战略:立足江东市场稳步 ...
- 《三国之刃》动画、特效、UI编辑方案
(以下内容依据Cocos秋季峰会演讲速记稿整理) 主持人王哲: 蔡加庚是<三国之刃>的技术负责人,也是我多年的好友.这个项目所有人都极其低调,即使游戏经常上榜Top10,但几乎从未对外分享 ...
- 【转】lonekight@xmu·ACM/ICPC 回忆录
转自:http://hi.baidu.com/ordeder/item/2a342a7fe7cb9e336dc37c89 2009年09月06日 星期日 21:55 初识ACM 最早听说ACM/ICP ...
- vue后端框架mysql_springboot + vue 前后端结合·数据库查询
springboot + vue 前后端结合·数据库查询 数据库部分: /* Navicat Premium Data Transfer Source Server : localHost Sourc ...
最新文章
- java 判断当前时间是否为节假日_最近公司招人,研发组商量了下,暂时定下这么多java面试题!...
- 人脸识别不只是隐私问题 信息泄露面临更大安全隐患
- ClickHouse之访问权限控制
- JVM 调优实战--jvisualvm远程连接使用教程
- python通过下载链接下载_Python根据URL地址下载文件——wget
- mysqli 扩展_MySQLi的优势
- gorm 密码字段隐藏_KeeWeb for mac(密码管理工具)
- 温柔又有耐心的男孩最吸引人
- cmder 基本配置和使用
- OpenStack:heat安装使用-Openstack Heat try-out
- 前端学到什么程度可以找到工作?
- vue 共用新增和修改验证分离
- maven中常遇到的一些错误
- 【Python】一键爬取金庸连载版/三联版/世纪新修版小说
- 大数据-----数据采集
- 阳离子铱配合物(Ir1+)|(Ir2-)|Ir(dmecf3ppz)2bpy+(PF6)-齐岳合成
- python电子英汉词典显示_如何使用python为Linux打造一款命令行下的在线英汉词典...
- VS2019:C++程序lib静态库、dll动态库的生成和使用
- nvcc编译器之编译选项(chapter 4)
- 凹凸世界服务器维护到几点,凹凸世界手游2021年7月21日版本更新停服维护公告_凹凸世界手游2021年7月21日更新了什么_玩游戏网...