Graph Theory
来源:互联网 发布:美国缩表中国楼市知乎 编辑:程序博客网 时间:2024/05/16 10:29
Graph Theory
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 194 Accepted Submission(s): 102
Problem Description
Little Q loves playing with different kinds of graphs very much. One day he thought about an interesting category of graphs called ``Cool Graph'', which are generated in the following way:
Let the set of vertices be {1, 2, 3, ...,n }. You have to consider every vertice from left to right (i.e. from vertice 2 to n ). At vertice i , you must make one of the following two decisions:
(1) Add edges between this vertex and all the previous vertices (i.e. from vertex 1 toi−1 ).
(2) Not add any edge between this vertex and any of the previous vertices.
In the mathematical discipline of graph theory, a matching in a graph is a set of edges without common vertices. A perfect matching is a matching that each vertice is covered by an edge in the set.
Now Little Q is interested in checking whether a ''Cool Graph'' has perfect matching. Please write a program to help him.
Let the set of vertices be {1, 2, 3, ...,
(1) Add edges between this vertex and all the previous vertices (i.e. from vertex 1 to
(2) Not add any edge between this vertex and any of the previous vertices.
In the mathematical discipline of graph theory, a matching in a graph is a set of edges without common vertices. A perfect matching is a matching that each vertice is covered by an edge in the set.
Now Little Q is interested in checking whether a ''Cool Graph'' has perfect matching. Please write a program to help him.
Input
The first line of the input contains an integer T(1≤T≤50) , denoting the number of test cases.
In each test case, there is an integern(2≤n≤100000) in the first line, denoting the number of vertices of the graph.
The following line containsn−1 integers a2,a3,...,an(1≤ai≤2) , denoting the decision on each vertice.
In each test case, there is an integer
The following line contains
Output
For each test case, output a string in the first line. If the graph has perfect matching, output ''Yes'', otherwise output ''No''.
Sample Input
3212241 1 2
Sample Output
YesNoNo题意:首先输入一个t,是样例数,然后输入一个n,表示有n个结点,下面有n-1个数,都是1和2,表示从第2个点开始到第n个点的选择,如果是1,表示这个点和前面所有的点中间建立一条边,2则是无操作,例如4 1 1 2,点2与点1相连,点3与点1点2相连,点4无操作。最后求是否构成完美匹配,完美匹配就是指每个点都配上对。
这里只需要考虑是否每个点都成对了,多余点边可以忽略不影响,每个点都可以与之前所有的点匹配,每次新判断一个点时都记录匹配数并获取之前匹配剩余数可与之匹配,这道题只需判断1和2,处理遍历点数与之前的匹配数关系
#include<stdio.h>#include<iostream>#include<string.h>using namespace std;int a[100005];int main(){ int t; cin>>t; while(t--) { int n; cin>>n; //a[1]=2; for(int i=2;i<=n;i++) { cin>>a[i]; } if(n%2) { printf("No\n"); continue; } int flag=0,sum=0; for(int i=n;i>=2;i--) { if(a[i]==1) { sum++; } else { if(sum==0) { flag=1; break; } sum--; } } if(flag==0) { printf("Yes\n"); } else printf("No\n"); }}
0 0
- Graph Theory
- Graph Theory
- Graph Theory
- timus graph theory
- Graph Theory - Assignment Problem
- Spectral Graph Theory
- Tournament (graph theory)
- HDU6029-Graph Theory
- HDU 6029 Graph Theory
- HDU6029 Graph Theory
- HDU 6029 Graph Theory
- HDU 6029 Graph Theory
- HDU 6029 Graph Theory
- hdoj 6029 Graph Theory
- hdu 6029 Graph Theory
- HDU 6029 Graph Theory
- HDU6029 Graph Theory
- Graph Theory HDU
- 取字符
- Android edittext的inputType属性
- 回归中的相关系数以及R平方值和Python应用举例
- SWIFT逻辑控制之控制转移
- webmagic学习笔记(4)---webmagic总体架构分析
- Graph Theory
- android保持屏幕常亮
- iOS 随身笔记之tableview 被选中后取消被选中的颜色 以及git客户端的下载
- 深入理解mysqldump原理 --single-transaction --lock-all-tables --master-data
- Android应用使用https
- 企业网站内部链接的形式分析
- UIBarButtonItem的一个分类,用户快速创建一个UIBarButtonItem
- 通过输入流的方式获取Request中的json参数
- 二叉树的镜像