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
杭电HDU
HDU
1856 More is better 并查集 路径压缩
做了并查集一段时间了。个人觉得利用并查集解题的套路其实很单调。1、开一个数组记录各个节点的父节点,初始化2、给出一对关联的数据,查找3、根据查找结果如果根不属于同一集合则合并当然,还可以优化。主要是在查找利用递归,使得在回溯时各个节点的父节点都是树的根节点。下次查找就可以降低查找长度。其次,可以利用一个数组记录每棵树的高度。在合并时将矮树链接到高树上,使得新生成的树尽量矮。大家可以看看这两个链接:
lulipeng_cpp
·
2020-09-15 13:46
HDU
图论专题
优化
ini
c
ACM 数论
HDU
1215 七夕节 (模板!)
ProblemDescription七夕节那天,月老来到数字王国,他在城门上贴了一张告示,并且和数字王国的人们说:"你们想知道你们的另一半是谁吗?那就按照告示上的方法去找吧!"人们纷纷来到告示前,都想知道谁才是自己的另一半.告示如下:数字N的因子就是所有比N小又能被N整除的所有正整数,如12的因子有1,2,3,4,6.你想知道你的另一半吗?Input输入数据的第一行是一个数字T(1#include
Little_boy_z
·
2020-09-15 13:45
HDU
2068——RPG的错排
MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):11639AcceptedSubmission(s):4773ProblemDescription今年暑假
杭电
sdljtyk
·
2020-09-15 13:41
HDU
数学
hdu
1856 查并集
对特殊情况总是考虑不周~~~当n=0应输出1;http://acm.
hdu
.edu.cn/showproblem.php?
JustSteps
·
2020-09-15 13:40
acm最小生成树&&查并集
杭电
oj2001题解
#include#includeintmain(){floata,b,c,d,i,l;//当a,b,c,d都定义为int型时结果正确,但是总显示OutputLimitExceededwhile(~scanf("%f%f%f%f",&a,&b,&c,&d)){i=(c-a)*(c-a)+(d-b)*(d-b);l=sqrt(i);printf("%.2f\n",l);}return0;}
外号班长
·
2020-09-15 13:40
ACM
hdu
2068错排+排列组合
传送门:http://acm.
hdu
.edu.cn/showproblem.php?
Jamence
·
2020-09-15 13:08
数论
hdu
2068
这道题我甚是无语,我的起始代码怎么提交都是wa后来没办法,改了一下某个无关紧要的计数变量的数据类型,它竟然AC了看来以后要继续努力啊正确代码如下: #include__int64pz(inta,intb){__int64t1=1,t2=1,i;for(i=a;i>=a-b+1;i--)t1*=i;for(i=1;i<=b;i++)t2*=i;returnt1/t2;}intmain(){intn,
itcoder-9527
·
2020-09-15 13:06
杭电
1025 LIS+排序
ConstructingRoadsInJGShining'sKingdomTimeLimit:2000/1000MS(Java/Others)MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):23348AcceptedSubmission(s):6677ProblemDescriptionJGShining'skingdomconsis
Hacky_acm
·
2020-09-15 13:01
ACM_DP
杭电
1233
水题Kruskal算法附上代码:#include#include#include#includeusingnamespacestd;constintN=10000;intb[N];structnode{intx;inty;intdis;}text[N*N];boolcomp(constnodex,constnodey){returnx.dis>n&&n){for(i=0;i>text[i].x>>
Brand_new_Future
·
2020-09-15 13:28
刷题
HDU
1232 畅通工程
畅通工程TimeLimit:4000/2000MS(Java/Others)MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):71680AcceptedSubmission(s):38299ProblemDescription某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇。省政府“畅通工程”的目标是使全省
Friends233
·
2020-09-15 13:27
算法
HDU
2064
#includeintmain(){intn;longlonginta=1,ans[36]={0,3};for(n=1;n本题是一道思维型很强的题,先看1你要移到中间再移到右边为2当你输入2时1为中右2再中1在中再左2再y右1再中右一共八步,当你为三时你可自己试试你就会发现这个规律
Fly_Eason
·
2020-09-15 13:27
HDU水题
hdoj1097 A hard puzzle(简单题)
来源:http://acm.
hdu
.edu.cn/showproblem.php?pid=1097关键在于如何解决超时问题。
CqZtw
·
2020-09-15 13:49
oj
HDU
-1075 What Are You Talking About
HDU
-1075WhatAreYouTalkingAboutTimeLimit:10000/5000ms(Java/Other)MemoryLimit:102400/204800K(Java/Other
tjial
·
2020-09-15 13:43
ACM__字典树
HDU
2057 16进制的加法
其实只要基础好就很简单#includeintmain(){__int64a,b;while(scanf("%I64X%I64X",&a,&b)!=EOF){if(a+b<0)printf("-%I64X\n",-a-b);elseprintf("%I64X\n",a+b);}return0;}
Arthur-Ji
·
2020-09-15 13:10
水算法
HDU
-- 2069 Coin Change 【母函数进阶】
传送门//这道题其实也是母函数的简单应用,大不了增加了硬币数量限制,总的数量不能超过100枚.//那我们就在原先的基础上增加一维用来表示所用硬币的数量.这样再循环时我们增加一个循环判断数量是否在限制范围内就行了./**@Cain*/constintmaxn=1e3+5;ints[10]={0,1,5,10,25,50};inta[maxn][105],b[maxn][105];//因为有数量限制,
Anxdada
·
2020-09-15 13:10
母函数
杭电
ACM 1.3.6
Fightingfor
HDU
TimeLimit:3000/1000MS(Java/Others)MemoryLimit:32768/32768K(Java/Others)TotalSubmission(
冷冰若水
·
2020-09-15 13:59
杭电
ACM
Steps
杭电
2001 计算两点间的距离
ProblemDescription输入两点坐标(X1,Y1),(X2,Y2),计算并输出两点间的距离。Input输入数据有多组,每组占一行,由4个实数组成,分别表示x1,y1,x2,y2,数据之间用空格隔开。Output对于每组输入数据,输出一行,结果保留两位小数。SampleInput00010110SampleOutput1.001.41代码实现:#include#includeintmai
zaitaosha
·
2020-09-15 13:58
HDU
1856More is better
DescriptionMrWangwantssomeboystohelphimwithaproject.Becausetheprojectisrathercomplex,themoreboyscome,thebetteritwillbe.Ofcoursetherearecertainrequirements.MrWangselectedaroombigenoughtoholdtheboys.The
心夏心冬
·
2020-09-15 13:20
并查集
并查集详解 (转)
杭电
HDU
1232畅通工程
来看一个实例,
杭电
1232畅通工程首先在地图上给你若干个城镇,这些城镇都可以看作点,然后告诉你哪些对城镇之间是有道路直接相连的。最后要解决的是整幅图的连通性问题
winter2121
·
2020-09-15 13:47
ACM**组合数学**
HDU
1856 H - More is better(并查集)
DescriptionMrWangwantssomeboystohelphimwithaproject.Becausetheprojectisrathercomplex,themoreboyscome,thebetteritwillbe.Ofcoursetherearecertainrequirements.MrWangselectedaroombigenoughtoholdtheboys.The
- Passerby ゛
·
2020-09-15 13:37
并查集
并查集
杭电
1856 More is better
这个题也只要用并查找的模版,然后再找最大的树集合。代码:ViewCode1#include2usingnamespacestd;3intset[10000001],c[10000001];4voidmst()5{6for(inti=1;i>n)34{35mst();36for(i=1;i>a>>b;39memg(a,b);40}41for(i=1;i<10000001;i++)42{43a=fin
weixin_34297704
·
2020-09-15 13:30
hdu
1856 More is better
ProblemDescriptionMrWangwantssomeboystohelphimwithaproject.Becausetheprojectisrathercomplex,themoreboyscome,thebetteritwillbe.Ofcoursetherearecertainrequirements.MrWangselectedaroombigenoughtoholdtheb
weixin_30735391
·
2020-09-15 13:54
HDU
-1856-More is better【并查集】
MoreisbetterTimeLimit:5000/1000MS(Java/Others)MemoryLimit:327680/102400K(Java/Others)TotalSubmission(s):24270AcceptedSubmission(s):8711ProblemDescriptionMrWangwantssomeboystohelphimwithaproject.Becaus
Somethingwll
·
2020-09-15 13:20
大菜鸟小历程
并查集
HDU
- 1856 - More is better
HDU
-1856-MoreisbetterTimeLimit:5000/1000MS(Java/Others)MemoryLimit:327680/102400K(Java/Others)ProblemDescriptionMrWangwantssomeboystohelphimwithaproject.Becausetheprojectisrathercomplex
Violet-Guo
·
2020-09-15 13:49
并查集
杭电
1727 (并查集)
#include#includeconstintN=100001;intbleg[N]={0};intfind(intx){inty=x;while(y!=bleg[y])y=bleg[y];while(x!=bleg[x]){intpx=bleg[x];bleg[x]=y;x=px;}returny;}voidUnion(inta,intb){intpa=find(a),pb=find(b);b
Turing118
·
2020-09-15 13:48
解题报告
杭电
1233 (并查集)
还是畅通工程TimeLimit:4000/2000MS(Java/Others)MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):24069AcceptedSubmission(s):10695ProblemDescription某省调查乡村交通状况,得到的统计表中列出了任意两村庄间的距离。省政府“畅通工程”的目标是使全省任何两个村庄间
听自己心跳的声音
·
2020-09-15 13:48
并查集
杭电
1198 并查集
本题不同于其他的并查集,看似很难,其实只要读懂题目,思路清晰,就很容易写出来,题目所示的田看似要用二维数组,但是我用一维数组也可以解决,先输入字符串,根据字符串匹配到是11种田中的哪一种,然后根据田的不同用一个二维数组表示不同的田,然后利用并查集,有水管相接的集合在一起;代码如下:12345678910111213141516171819202122232425262728293031323334
王可夫
·
2020-09-15 13:47
ACM
HDU
1026 Ignatius and the Princess I 解题报告--bfs
IgnatiusandthePrincessITimeLimit:2000/1000MS(Java/Others)MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):9811AcceptedSubmission(s):2928SpecialJudgeProblemDescriptionThePrincesshasbeenabductedb
夕里子
·
2020-09-15 13:16
搜索
HDU
bfs
HDU
1075 What Are You Talking About 解题报告--字典树
WhatAreYouTalkingAboutTimeLimit:10000/5000MS(Java/Others)MemoryLimit:102400/204800K(Java/Others)TotalSubmission(s):10326AcceptedSubmission(s):3289ProblemDescriptionIgnatiusissoluckythathemetaMartianye
夕里子
·
2020-09-15 13:16
树
HDU
字典树
hdu
(1856)More is better
#include"stdio.h"#include"string.h"intpre[10000005];intlink[10000005];inta[100005],b[100005];intfind(intk){returnk==pre[k]?k:pre[k]=find(pre[k]);}intmain(){intm,i,k,max;while(scanf("%d",&m)!=EOF){k=0;
煦--晨
·
2020-09-15 13:15
图论
hdu
1856
题目并查集。找到最大出现的那个点。对于每一个线段使得其权值加1最后统计根节点的权值最大的就是答案当n=0是,答案是1.特殊数据特判,否则wa另外并查集的查找操作,若按其他方式写的话,即超时。最后各种bug的加速情况下46msAC代码如下:#includeusingnamespacestd;#includeconstintmaxn=10000010;constintN=100010;intpre[m
黄小豪被虐惨了
·
2020-09-15 13:44
ACM-数据结构
并查集
杭电
More is better (DFS)
好奇怪,我把n,m定义为min,max时竟然出现编译错误(http://acm.
hdu
.edu.cn/viewerror.php
_西西_
·
2020-09-15 13:42
搜索
杭电
oj1198:Farm Irrigation(并查集)
FarmIrrigation题目链接TimeLimit:2000/1000MS(Java/Others)MemoryLimit:65536/32768K(Java/Others)ProblemDescriptionBennyhasaspaciousfarmlandtoirrigate.Thefarmlandisarectangle,andisdividedintoalotofsamllsquare
醉酒诗人
·
2020-09-15 13:24
并查集
杭电oj
oj系统
数据结构
算法
杭电
OJ4496 并查集 D-City
D-CityTimeLimit:2000/1000MS(Java/Others)MemoryLimit:65535/65535K(Java/Others)TotalSubmission(s):2849AcceptedSubmission(s):1005ProblemDescriptionLuxerisareallybadguy.Hedestroyseverythinghemet.OnedayLux
mengxiang000000
·
2020-09-15 13:09
并查集
杭电
1856 more is better
ProblemDescriptionMrWangwantssomeboystohelphimwithaproject.Becausetheprojectisrathercomplex,themoreboyscome,thebetteritwillbe.Ofcoursetherearecertainrequirements.MrWangselectedaroombigenoughtoholdtheb
不为自己找借口
·
2020-09-15 13:09
算法
杭电
OJ——1232 畅通工程(并查集)
畅通工程ProblemDescription某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇。省政府“畅通工程”的目标是使全省任何两个城镇间都可以实现交通(但不一定有直接的道路相连,只要互相间接通过道路可达即可)。问最少还需要建设多少条道路?Input测试输入包含若干测试用例。每个测试用例的第1行给出两个正整数,分别是城镇数目N(intbin[1002];intfin
lishuhuakai
·
2020-09-15 13:04
Acm
并查集
hdu
1856-More is better
x:fa[x]=find(fa[x]);//FileName:
hdu
1856.cpp//Author:rud
bo-jwolf
·
2020-09-15 13:04
学习之路
一点一点学算法
并查集
HDU
-1856-More is better
点击打开链接MoreisbetterTimeLimit:5000/1000MS(Java/Others)MemoryLimit:327680/102400K(Java/Others)TotalSubmission(s):28985AcceptedSubmission(s):10308ProblemDescriptionMrWangwantssomeboystohelphimwithaproject
cjj97
·
2020-09-15 13:33
并查集
求教贴:HDOJ 1856 More Is Better!!!
HDOJ1856MoreIsBetter求教帖(大一在读回复可能不及时,如果有大佬教的话非常感谢)原题链接:(http://acm.
hdu
.edu.cn/showproblem.php?
jackyonline
·
2020-09-15 13:30
C++
c++
hdu
1800
FlyingtotheMarsTimeLimit:5000/1000MS(Java/Others)MemoryLimit:32768/32768K(Java/Others)TotalSubmission(s):6935AcceptedSubmission(s):2271ProblemDescriptionIntheyear8888,theEarthisruledbythePPFEmpire.Ast
hzhyhx1117
·
2020-09-15 13:25
水题?!
杭电
ACM
从题意上说与1272的唯一区别就是有向和无向的区别实际上有向路径对结果的影响判定和无向是不同的另外本题的测试数据出奇的小数组开20足够了#includeintt=0,i,p[20],s[20],a,b,cnt,flag;intrt(intx){returnp[x]==x?x:rt(p[x]);}voidf(inta,intb){ if(rt(a)!=rt(b)&&b==p[b])p[b]=a;/
2kbb1
·
2020-09-15 13:55
HDOJ
ACM
HDOJ
ACM
HDOJ 1213 How Many Tables
杭电
ACM
比1232更原始的并查集#includeintt,m,n,i,p[1001],a,b,cnt;intrt(intx){returnp[x]==x?x:rt(p[x]);}voidf(inta,intb){intx=rt(a),y=rt(b);if(x!=y)p[x]=y;}intmain(){scanf("%d",&t);while(t--){scanf("%d%d",&n,&m);for(i=1
2kbb1
·
2020-09-15 13:55
HDOJ
ACM
HDOJ 1272 小希的迷宫
杭电
ACM
这题的基本结构和1232一样但无需考虑重复输入路径(包括颠倒)的情况所以出现同根必然有回路另外要考虑无顶点的空图给出特判以上两点题中似乎未给出明确信息空手写完调整一下才AC#includeinti,p[100005],s[100005],a,b,cnt,loop;//s标记出现过的顶点后面才能通过p得出连通分量数intrt(intx){returnp[x]==x?x:rt(p[x]);}voidf
2kbb1
·
2020-09-15 13:55
ACM
HDOJ
HDOJ 1232 畅通工程
杭电
ACM
并查集原始题看懂PPT上代码后空手练的寻根函数用了递归但未超时#includeintn,m,i,p[1001],a,b,cnt;intrt(intx){returnp[x]==x?x:rt(p[x]);}voidf(inta,intb){ intx=rt(a),y=rt(b); if(x!=y)p[x]=y;}intmain(){ while(scanf("%d%d",&n,&m),n){
2kbb1
·
2020-09-15 13:55
ACM
HDOJ
HDOJ
ACM
HDOJ 1421 搬寝室
杭电
ACM
此类状态转移方程在DP问题中很常见这题先要理解为何每趟只能搬排序后相邻的物品PPT中给出的不等式可自证有助于理解#include#includeusingnamespacestd;intn,k,i,j,t,a[2001],f[2001][1001];//f[x][y]保存x件物品中搬y趟(共2y件)的最优解intmain(){while(cin>>n>>k){for(i=1;i>a[i];sort
2kbb1
·
2020-09-15 13:54
ACM
HDOJ
HDOJ
ACM
HDOJ 1097 A hard puzzle
杭电
ACM
数论基础题核心是“同余幂”算法即求a^bmodm(a的b次方整除m的余数)的算法本题中恰好m=10运算时注意:1.底数不断平方在指数的二进制位为1的地方乘入结果复杂度从O(n)降低至O(log2n)(以2为底)2.上述积%m的结果即乘入数各自%m的余数之积再%m余数相乘时再不断递归该原理大大降低空间复杂度详细数学证明可参考基础数论中关于整除和同余的部分知识C代码如下:#includeintmain
2kbb1
·
2020-09-15 13:54
ACM
HDOJ
HDOJ 1215 七夕节
杭电
ACM
本题是
杭电
ACM历来的菜鸟训练题以下是我用C写的紧凑版本仅供参考#include#includeintmain(){intt,i,n,s,q;scanf("%d",&t);while(t--){scanf
2kbb1
·
2020-09-15 13:54
ACM
HDOJ
ACM
HDOJ
HDOJ 2553 N皇后问题
杭电
ACM
N皇后的原理不再赘述这题让我发现HDOJ判断超时的依据是从输入开始算的#includeintx1[19],x2[19],r[19],n,s,a[11],i;voidf(inti){if(i>n){s++;return;}for(intj=1;j<=n;++j){if(!r[j]&&!x1[i-j+9]&&!x2[i+j-2]){r[j]=i;x1[i-j+9]=x2[i+j-2]=1;f(i+1)
2kbb1
·
2020-09-15 13:54
HDOJ
ACM
HDOJ 1159 Common Subsequence
杭电
ACM
方法在老刘的PPT里已经给出该代码在G++环境下AC否则会停止编译稍改可适应其他环境#includeusingnamespacestd;inti,j,xl,yl,f[1001][1001]={0};intmain(){stringx,y;while(cin>>x>>y){xl=x.length(),yl=y.length();for(i=1;i<=xl;++i)for(j=1;j<=yl;++j)
2kbb1
·
2020-09-15 13:54
HDOJ
ACM
ACM
HDOJ
hdu
1856
#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
并查集
上一页
47
48
49
50
51
52
53
54
下一页
按字母分类:
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
其他