HDU 1272 小希的迷宫

传送门

这题主要就是点的数量不确定,另外一个点都没有的话就是YES,而且这题数据里没有有环非连通图,所以直接判断边和点的数量关系即可。

#include <iostream>
#include <algorithm>
#include <vector>
#include <cstring>
#include <unordered_set>
using namespace std;

unordered_set<int> s;
int a, b;
int counter = 0;

int main()
{
    for (; ~scanf("%d%d", &a, &b);)
    {
        if (a == -1) break;
        if (a == 0)
        {
            if (counter + 1 == s.size() || counter == 0) printf("Yes\n");     // 存在一个小坑,就是第一次输入 0 0 的时候,应该输出 Yes,否则会 WA 
            else printf("No\n");
            counter = 0;
            s.clear();
            continue;
        }
        counter++;
        s.insert(a);
        s.insert(b);
    }

    return 0;
}

// 这道题测试用例不行,存在环的非连通图输出Yes,必须要上并查集,详情1325

posted @ 2017-04-08 20:07  CrossingOver  阅读(80)  评论(0编辑  收藏  举报