题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1856题意很简单,和小希的迷宫这题很像(连图基本都是一样的),但是区别在于加边的时候加入了方向,也就是多了一个判断的条件,每个点的入度最多为1。要判断其实也蛮简单的,我们在加边的时候统计一下入度就好。这题最坑的地方(其实认真读题的同学这么觉得),它的结束判断条件是#include #inc
原创 2022-08-30 10:56:32
71阅读
http://acm.hdu.edu.cn/showproblem.php?pid=1325 1 #include 2 #include 3 #include 4 #define maxn 5000 5 using namespace std; 6 7 int in[maxn]...
转载 2014-05-08 21:13:00
39阅读
2评论
Is It A Tree?Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 6961Accepted Submission(s): 1619Problem DescriptionA tree is a well-known data structure that is either empty (null, void, nothing) or is a set of one or more nodes connected by directed
转载 2012-08-03 19:06:00
50阅读
2评论
Problem DescriptionA tree is a well-known data structure that is either empty (null, void, nothing) or is a set of one or more nodes connected by dire...
转载 2015-08-13 19:05:00
37阅读
2评论
Is It A Tree?Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 14276 Accepted Submission(s): 3188 Problem Description A tree is a well-known data st...
转载 2014-08-12 13:59:00
44阅读
2评论
传送门题目大意给两个整数u,v,(u,v≤1018)u,v,(u,v\leq 10^{18})u,v,(u,v≤1018),求出长度最短的数组,使得数组内元素按位异或为uuu,元素之和为vvv。如果有解,输出两行,第一行输出一个数nnn,第二行输出nnn个数,表示数组里的元素。如果有多个答案,输出任意一组。如果无解,输出−1-1−1。思路代码...
原创 2022-07-15 10:42:40
90阅读
题目大意:判断根据关系能否建成一棵树。解题思路:,与HDU1272一致,就改动一下输出内容,因为一棵树的子
原创 2021-12-01 14:51:12
22阅读
Is It A Tree? Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 20416 Accepted Submission(s): 4628
转载 2016-05-14 11:16:00
65阅读
2评论
并查集方法 #include #include #include #include #include #include using namespace std; int fa[100010],ru[100010]; int s[100010],cnt,num; int _fa(int v) { if(v==fa[v]) return v; fa[v]=_fa(fa[v]); ...
转载 2017-10-06 20:53:00
34阅读
// 428K 0MS G++ #include #include #define MAX 110#define JOB_MAX 1020int G[MAX][MAX];int n;int m;int k;int V1(int beginId) {
原创 2023-05-23 16:07:50
63阅读
判断有向根树,并查集,用两个数组,一个bin记录父结点,一个flag记录是否为已有父结点,用一个数k来标记是否为有向根树。明显,1.在边的输入过程中如果出现已有父亲结点的点为子结点,则这一定不是有向根树2.在输入完成后,要检查是否只有一个根结点就满足这两点,在oj上水过~~了在与队友的交流中发现时因为数据水的缘应该需要加一个判断是否有连通分支为圈的情况,考虑不够周全吖!!!#include<
原创 2014-02-13 16:48:11
538阅读
1 class Solution: 2 def __init__(self): 3 self.tag = True 4 5 def preOrder(self,root,target): 6 if root != None: 7 if root.left != None: 8
转载 2020-01-19 21:16:00
49阅读
题解:首先,是一棵树的话要满足的条件是1 不成环;2 除了根,所有的入度为1,根入度为0;3 只有一棵树,不是森林那么,用并查集记录父亲,如果矛盾就成环,而最后找到一个节点的父亲,如果其余的不是则为森林,而入度则在开始时记一下,最后发现如果有入度大于1的则也不行。#include #include using namespace std; const int MAXN=100010; int f[MAXN],flag,hash[MAXN],in[MAXN]; void init(){ flag=1; for(int i=1;i1){flag=0;bre...
转载 2014-02-11 20:32:00
16阅读
2评论
1325C 题意: n个节点,n-1条边,每条边上有一个数字,0~n-2,求一个编号顺序,使得所有u到v的编号种的mex最小 思路: 两个点u,v之间的mex的贡献肯定有u和v相连的两条边,可以优先把叶子节点全部选成最小,然后任意两个叶子节点之间的mex都只会<=2,中间的路径(不选择根节点)的me ...
转载 2021-10-09 22:41:00
67阅读
2评论
/* 题意: 有两台机器A和B,分别有n种和m种不同的模式, 有k个工作,每个工作都可以在那两个机器的某种特定的模式下处理, 如job[0]既可以在A机器的3号模式下处理,也可以在B机器的4号模式下处理, 初始时两台机器都在0号模式下工作,机器的工作模式改变只能通过重启来改变, 通过改变工作的顺序和分配每个工作给合适的机器可以减少重启机器的次数,求重启机器的最少次数 思路: 令X,Y分别是机器A和B的工作模式集合,工作在A和B机器上的工作模式分别为X[a]和Y[b],让X[a]与Y[b]相连, 这样我们就可以X和Y作为两个顶点集合来建立二分图,重启机器的次数就是覆盖所有的边的顶点数。 所以问.
转载 2011-07-22 22:31:00
51阅读
2评论
du[]数组 记录每个点的入度。最后扫一下所有图上的点,如果只有一个点的入度为0,并且其他点的入度不大于2(就是都等于1),则此图是一个树#include#include#includeusing namespace std;int du[100000];int vis[100000];int main(){ int i,j,k; int n,m; int m
原创 2023-09-12 11:59:25
63阅读
点击打开链接Machine ScheduleTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 15790 Accepted: 6763DescriptionAs we all know, machine scheduling is a v
原创 2022-09-07 16:43:14
42阅读
问题链接:HDU1325 Is It A Tree?。问题简述:若干组测试用例,每个测试用例包括若干组边(两个正整数组成),最后两个0(0 0)结束。判定每个测试用例是否为一棵树。问题分析:判定有向图是否为一棵树的问题。可以用那些边构造一个并查集,构建并查集时,如果有...
转载 2017-02-26 22:02:00
32阅读
2评论
#include//判断是否有环,判断是否有点,判断是否是一个父节点#include#define N 1000000int pre[N+10],dis[N+10];int find(int n ) {if(pre[n]!=n)return pre[n]=find(pre[n]);return pr...
转载 2013-10-30 17:16:00
36阅读
[题目链接] http://poj.org/problem?id=1325 [算法] 二分图最小覆盖 [代码]
转载 2018-08-03 16:48:00
59阅读
2评论
  • 1
  • 2
  • 3
  • 4
  • 5