A - Wrestling Match HDU - 5971(搜索)

 A - Wrestling Match HDU - 5971

 

分类:bfs+分类

2018TYUT秋季ACM模拟赛(13)2016大连

(写的有点乱=.=,有疑问可以问在下)

题意:给出人数和边数,以及已知坏人好人阵营的人数。问判断能否确定所有人的好坏。例如第一组数据2的身份不能判断,其余人的身份可以假设一个身份使所有人的身份不冲突。

思路:1、建立邻接表,存储(用集合分类,后想想可以直接用数组标记就好了,不用set也可以) 2、广搜+判断冲突

#include
#include
#include
#include
#include
#include
#include
using namespace std;
const int N=1000+10;
const int M=10000+10;
set h1,h2;
queue q;
bool vis[N];
vector ed[N];

int main(){
    int n,m,l,r;
    int a,b;
    while(scanf("%d%d%d%d",&n,&m,&l,&r)!=EOF)
    {
        for(int i=1;i<=n;i++)
            ed[i].clear();
        h1.clear();h2.clear();
        int flag=0;
        memset(vis,0,sizeof(vis));
        for(int i=0;i

 

你可能感兴趣的:(HDU,2018ACM模拟赛集训)