E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
hdu1856
HDU 1856 More is better(并查集+离散化)
题目地址:
HDU1856
水题。由于标号范围太大,而数据数只有10w,所以要先进行离散化。然后就是裸的并查集了。
Aerolite坠落
·
2020-09-15 15:53
并查集
hdu1856
More is better (并查集)
MoreisbetterTimeLimit:5000/1000MS(Java/Others)MemoryLimit:327680/102400K(Java/Others)TotalSubmission(s):19011AcceptedSubmission(s):6998ProblemDescriptionMrWangwantssomeboystohelphimwithaproject.Becaus
甄情
·
2020-09-15 15:37
【图论】
Acm竞赛
HDU1856
(并查集求最大集合)
有比较说明一点经验:求最大值有时候不需要把数据求出来后遍历。注意:最大值的求解和比较的顺序没有关系,所以可以一边求出数据,一边进行比较。【即用设置全局变量maxp的方法解决】省去最后遍历的步骤。#include#include#include#includeusingnamespacestd;constintmaxn=1e7+5;intpre[maxn];intre[maxn];intn;inta
圣帝天龙
·
2020-09-15 14:44
并查集
ACM
HDU1856
:More is better
ProblemDescriptionMrWangwantssomeboystohelphimwithaproject.Becausetheprojectisrathercomplex,themoreboyscome,thebetteritwillbe.Ofcoursetherearecertainrequirements.MrWangselectedaroombigenoughtoholdtheb
键盘上的舞者
·
2020-09-15 14:32
并查集
hdu1856
查并集
对特殊情况总是考虑不周~~~当n=0应输出1;http://acm.hdu.edu.cn/showproblem.php?pid=1856#include#include#includeusingnamespacestd;intp[10000005];intvis[10000005];intmaxx;inlinevoidmake_set(intn){p[n]=n;}intfind_set(inti
JustSteps
·
2020-09-15 13:40
acm最小生成树&&查并集
HDU1856
H - More is better(并查集)
DescriptionMrWangwantssomeboystohelphimwithaproject.Becausetheprojectisrathercomplex,themoreboyscome,thebetteritwillbe.Ofcoursetherearecertainrequirements.MrWangselectedaroombigenoughtoholdtheboys.The
- Passerby ゛
·
2020-09-15 13:37
并查集
并查集
hdu1856
#include#includeusingnamespacestd;constintmaxn=10000005;intf[maxn];inta[maxn];voidgg(){for(inti=1;i_max)_max=a[i];}printf("%d\n",_max);}return0;}
嘎达啊
·
2020-09-15 13:48
并查集
HDU1856
More is better 解题报告
MoreisbetterTimeLimit:5000/1000MS(Java/Others)MemoryLimit:327680/102400K(Java/Others)TotalSubmission(s):10251AcceptedSubmission(s):3778ProblemDescriptionMrWangwantssomeboystohelphimwithaproject.Becaus
夕里子
·
2020-09-15 12:35
并查集
HDU1856
More is better
HDU1856MoreisbetterProblemDescriptionMrWangwantssomeboystohelphimwithaproject.Becausetheprojectisrathercomplex,themoreboyscome,thebetteritwillbe.Ofcoursetherearecertainrequirements.MrWangselectedaroom
小鸡炖蘑菇_
·
2020-09-15 12:59
杭电
并查集
【HZNU Summer training】
HDU1856
More is Better (并查集最大集合)
此题的题意是,在一个房间里有一堆邻家♂boy,他们互相之间存在着一些py♂关系,你需要找出他们中间最大的一个朋友圈(朋友关系具有传递性),并输出这个朋友圈中的人数。看到朋友关系很难不想到并查集,但此题要求输出最大集合的元素个数,那么就必须做一些处理。起初我打算处理完输入后再做一遍遍历,找出每个集合的元素个数,最后找出最大值(场面过于暴力)。后来想起这道题数据规模有1e7,暴力个蛇皮自行车。遂想到在
含板朝南
·
2020-08-16 23:31
算法学习
HDU1856
More is better
大致思路:并查集,每次合并时都将两个根节点的num值合并,循环一遍找到最大的num值即可。坑点!!!“如果MrWang不挑选的话,房间里会有一个男孩被留下”,当n=0时,输出1。(一定要注意特殊值,一定要好好读题,切记切记~~)#include#include#include#include#includeusingnamespacestd;#defineMAX10000005intper[MAX
qq_38235087
·
2020-08-13 17:55
acm
图论
hdu1856
(基础并查集)
MrWangwantssomeboystohelphimwithaproject.Becausetheprojectisrathercomplex,themoreboyscome,thebetteritwillbe.Ofcoursetherearecertainrequirements.MrWangselectedaroombigenoughtoholdtheboys.Theboywhoareno
童话ing
·
2017-09-10 10:23
并查集
HDU1856
More is better (加权并查集)
近几天---并查集的日常:外链并查集题意:这道题目的目的是想知道经过一系列的合并操作之后,查询在所有的子树中,秩的最大值是多少,简而言之,就是最大的那颗子树包含了多少个节点。模板:importjava.util.Scanner;publicclassMain{privateint[]id;privateint[]sz;privateintcount;publicMain(intN){count=N
Kazama_Kenji
·
2016-10-20 22:44
acm
hdu1856
#include<stdio.h> #define N 10000000+5 int father[N],sum[N]; int ans; int find_father(int x){ if(father[x]==x){ return x; } else{ father[x]=find_father(father[x]); } retu
·
2015-11-13 00:58
HDU
hdu 1856并查集
很简单的并查集,不过第一次交居然超内存,把height数组改为short int就过了~~ /* *
hdu1856
/win.cpp * Created on: 2012-7-18 *
·
2015-11-12 09:21
HDU
【
HDU1856
】More is better(并查集基础题)
裸并查集,但有二坑: 1.需要路径压缩,不写的话会TLE 2.根据题目大意,如果0组男孩合作的话,应该最大的子集元素数目为1.所以res初始化为1即可。 1 #include <iostream> 2 #include <cstring> 3 #include <cstdio> 4 #include <cstdlib&
·
2015-11-11 12:51
more
hdu1856
View Code #include < iostream > using namespace std; #define M 10000001 int father[M]; int _max; int sum[
·
2015-11-11 01:30
HDU
hdu1856
依旧并查集
不过这个求的是最大集合的个数 #include<iostream> #include<set> #include<cstdio> #include<vector> using namespace std; const int MAXN=10000005; const int MAXM=100005; int u[MAXN];
·
2015-11-08 10:31
HDU
HDU1856
MoreisbetterTimeLimit:5000/1000MS(Java/Others)MemoryLimit:327680/102400K(Java/Others)TotalSubmission(s):19800AcceptedSubmission(s):7270ProblemDescriptionMrWangwantssomeboystohelphimwithaproject.Becaus
MrBlankIsAwesome
·
2015-11-02 19:32
并查集
HDU1856
MoreisbetterTimeLimit:5000/1000MS(Java/Others)MemoryLimit:327680/102400K(Java/Others)TotalSubmission(s):19800AcceptedSubmission(s):7270ProblemDescriptionMrWangwantssomeboystohelphimwithaproject.Becaus
mrlry
·
2015-11-02 19:00
hdu1856
选出更多的孩子
题目大意: 老师选取2个学生对应的号码,这两人视作朋友,同时朋友的朋友也可以看成自己的朋友。 最后老师选出一个人数最多的朋友圈。 这里学生的人数不大于10^7,所以操作时需要极为注意,操作步数能省则省。 我也在超时了两次之后,不断进行代码优化才做出。 超时的部分函数代码: 1 int getHead(int x) 2 { 3 while(x!=fa[x])
·
2015-10-31 09:02
HDU
hdu1856
题意:就是询问下,一个并查集里面结点数最多的....并输出来,大致是这个意思吧,当然可以离散化下,水题..... #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> using namespace std; #define M 100005
·
2015-10-30 13:41
HDU
hdu1856
More is better 并查集
#include #include #defineMaxn10000005 intfather[Maxn],num[Maxn]; voidinit() {for(inti=1;imax) max=a; if(b>max) max=b; Union(a,b); } intMax=0; for(i=1;iMax) Max=num[i]; printf("%d\n",Max); } return0; }
Griffin_0
·
2015-10-08 20:00
并查集
HDU1856
More is better
HDU1856MoreisbetterProblemDescriptionMrWangwantssomeboystohelphimwithaproject.Becausetheprojectisrathercomplex,themoreboyscome,thebetteritwillbe.Ofcoursetherearecertainrequirements.MrWangselectedaroom
qq_21120027
·
2015-08-14 19:00
杭电
并查集
hdu1856
More is better (并查集)
MoreisbetterTimeLimit:5000/1000MS(Java/Others) MemoryLimit:327680/102400K(Java/Others)TotalSubmission(s):19011 AcceptedSubmission(s):6998ProblemDescriptionMrWangwantssomeboystohelphimwithaprojec
su20145104009
·
2015-08-12 08:00
HDU
并查集
1856
hdu1856
HDU1856
More is better 并查集
并查集水题。找出并查集的不同集合中元素最多的集合的元素数目。#include #include usingnamespacestd; #defineMAX10000010 intpar[MAX],rank[MAX]; voidInit() { for(inti=1;irank[y]) { par[y]=x; rank[x]+=rank[y]; } else { par[
AC_Gibson
·
2015-01-04 19:00
HDU 1856 More is better(并查集+离散化)
题目地址:
HDU1856
水题。由于标号范围太大,而数据数只有10w,所以要先进行离散化。然后就是裸的并查集了。
u013013910
·
2014-09-30 14:00
编程
算法
C语言
ACM
并查集
hdu1856
——More is better
ProblemDescriptionMrWangwantssomeboystohelphimwithaproject.Becausetheprojectisrathercomplex,themoreboyscome,thebetteritwillbe.Ofcoursetherearecertainrequirements.MrWangselectedaroombigenoughtoholdtheb
Guard_Mine
·
2014-09-05 22:00
并查集
HDU1856
More is better 并查集
这是道并查集的题目。注意输入0的时候是输出1。跟UVA10608Friends并查集差不多。#include intfa[10000001],tot[10000001]; intfind(intu) { ints=u; while(fa[u]!=u)u=fa[u]; while(fa[s]!=s){fa[s]=u;s=fa[s];} returnu; } intmain() { intn,i,x,
yzj577
·
2014-07-30 16:00
C++
优化
HDU
并查集
hdu1856
赤裸裸的并查集,数据较水,不过太大,注意超时,建立并查集一定要遵循多包少,这样简化下一次的查找,缩短时间,还有,应该一边输入关系,一边刷新元素最大值,这样之后就不用额外加个循环。总结还是数据的处理能力吖......#include intbin[10000002]; intflag[10000002]; intmax; intfind(intx) { while(bin[x]!=x) x=bin[
qeroLai
·
2014-02-13 16:29
return
能力
最大值
元素
hdu 1856 More is better
点击
hdu1856
思路:思路:离散化+并查集分析:1点数最多为10^7,但是边数最多10^5,所以我们必须采用离散化,然后利用带权并查集的思想,rank[x]表示的是以x为根节点的集合的元素个数2这一题主要注意的就是当
cgl1079743846
·
2013-08-10 09:00
hdu1856
(并查集)
MoreisbetterTimeLimit:5000/1000MS(Java/Others) MemoryLimit:327680/102400K(Java/Others)TotalSubmission(s):9837 AcceptedSubmission(s):3624ProblemDescriptionMrWangwantssomeboystohelphimwithaproject
xj2419174554
·
2013-07-23 23:00
数据结构
并查集
hdu1856
More is better
#include //求并查集,元素最多的集合 structnode { inta,b; }arr[100002]; intfather[10000002],rank[10000002]; intfind(intx) { if(father[x]!=x) father[x]=find(father[x]); returnfather[x]; } intmain() { intn,i,ans;
lezong2011
·
2013-07-08 01:00
HDU1856
:More is better
点击打开题目链接MoreisbetterTimeLimit:5000/1000MS(Java/Others) MemoryLimit:327680/102400K(Java/Others)TotalSubmission(s):9760 AcceptedSubmission(s):3592ProblemDescriptionMrWangwantssomeboystohelphimwith
l383137093
·
2013-06-12 02:00
数据结构
并查集
hdu1856
查并集
对特殊情况总是考虑不周~~~当n=0应输出1;http://acm.hdu.edu.cn/showproblem.php?pid=1856#include #include #include usingnamespacestd; intp[10000005]; intvis[10000005]; intmaxx; inlinevoidmake_set(intn) { p[n]=n; } intfi
JustSteps
·
2013-04-01 14:00
HDU1856
:More is better
ProblemDescriptionMrWangwantssomeboystohelphimwithaproject.Becausetheprojectisrathercomplex, themoreboyscome,thebetteritwillbe.Ofcoursetherearecertainrequirements.MrWangselectedaroombigenoughtoholdthe
libin56842
·
2013-03-26 14:00
ACM
HDU
并查集
杭电
【优化】
HDU1856
——The More The Better(顺便求解犇们JAVA版为啥不过)
题目:点击打开链接题目讲一个老师邀请尽量多的同学去家,这些同学应该都是朋友关系,问最多能有几个同学去。这个题需要对序号进行优化,把树按顺序排起来,然后再进行比较,顺便不要忘了0的情况,有一个同学会去的。这个题最初看的时间上c++要求1000MSJAVA要求4000MS,也没推导出应该优化序号,用JAVA过了样例,但是提交上去是WA,时间也还充裕。。如果有大犇能帮忙改对了,小弟在此表示感谢了。。。最
mig_davidli
·
2013-01-23 16:00
hdu1856
/*分析: 并查集。 这题……真无语,本来想着TLE、MLE了再优化,这代码只是试试的,没想到……这都93MSac了?!才用1200+K的内存,数据明显水嘛,那给那么大的范围干什么啊,还以为要离散化什么的辅助优化的……我晕了…… 不过,1a挺好~ 2012-07-16*/#include"stdio.h" structA { intnum; int
Ice_Crazy
·
2012-07-16 10:00
HDU1856
http://acm.hdu.edu.cn/showproblem.php?pid=1856 More is better Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 327680/102400 K (Java/Others) Total Submission(s): 2834 &nb
Dev|il
·
2011-07-04 01:00
HDU
并查集
HDU1856
并查集HDU1856#include#includeusing namespace std;int father[10000001],num[10000001];/**//*初始化数组*/void makeset(int x){ for(int i=0;i=num[y]) { father[y]=x; num[x]+=num[y]; }
Yiner的ACM
·
2011-03-30 20:00
上一页
1
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他