zoukankan      html  css  js  c++  java
  • 7-10 排座位 (25分)

    7-10 排座位 (25分)

    #include<iostream>
    #include<cstdio>
    #include<vector>
    #include<algorithm>
    #include<cstring>
    #include<string>
    #include<map>
    #include<set>
    #include<queue>
    #include<iomanip>
    #include<stack>
    using namespace std;
    #define STDIN freopen("in.in", "r", stdin);freopen("out.out", "w", stdout);
    
    
    const int N = 105;
    int n, m, k;
    int fa[N];
    set<int> se[N];
    void init()
    {
        for (int i = 1; i <= n; i++) fa[i] = i;
    }
    int find(int x)
    {
        if (x == fa[x]) return x;
        return fa[x] = find(fa[x]);
    }
    void unite(int a, int b)
    {
        int fa1 = find(a);
        int fb = find(b);
        fa[fa1] = fb;
    }
    int main()
    {
    //     STDIN
        cin >> n >> m >> k;
        init();
        int a, b, c;
        while (m--)
        {
            cin >> a >> b >> c;
            if (c == 1)
            {
                unite(a, b);
            }
            if (c == -1)
            {
                se[a].insert(b), se[b].insert(a);
            }
        }
        for (int i = 1; i <= k; i++)
        {
            int a, b;
            cin >> a >> b;
            if (find(a) == find(b) && se[a].find(b) == se[a].end())
            {
                puts("No problem");
            }
            if (find(a) != find(b) && se[a].find(b) == se[a].end()) puts("OK");
            if (se[a].find(b) != se[a].end() && find(a) == find(b)) puts("OK but...");
            if (find(a) != find(b)&&se[a].find(b) != se[a].end()) puts("No way");
        }
    }
  • 相关阅读:
    Div+CSS 布局
    Windows Mobile 参考:
    Linux export的作用
    CSS(2)基本语法
    HTML(6)超链接
    HTML(5)常用的格式标签
    HTML(8)表格
    CSS(1) CSS简介
    HTML(7)图像、背景和颜色
    HTML(10)框架
  • 原文地址:https://www.cnblogs.com/hulian425/p/14032810.html
Copyright © 2011-2022 走看看