zoukankan      html  css  js  c++  java
  • L2-025. 分而治之

    #include<stdio.h>
    #include<iostream>
    #include<string.h>
    #include<algorithm>
    #include<math.h>
    #include<vector>
    using namespace std;
    struct node
    {
        int u;
        int v;
    }a[10005];
    int vis[10005];
    int main()
    {
        int n,m;
        cin>>n>>m;
        for(int i=1;i<=m;i++)
           cin>>a[i].u>>a[i].v;
        int k;
        cin>>k;
        while(k--)
        {
            int len,flag=0,b;
            cin>>len;
            memset(vis,0,sizeof(vis));
            for(int i=1;i<=len;i++)
            {
                cin>>b;
                vis[b]=1;//打下了b城市
            }
            for(int i=1;i<=m;i++) //枚举出现过的m个a[i].u <--> a[i].v结盟对
            {
                if(!vis[a[i].u] && !vis[a[i].v]) //一边两端点全都没在摧毁区 o_o (将军你这打法不对啊 人家还好好的绑在一起同生共死 你怎么分而治之 只要有一个结盟团队存在就标记为1 马上跳出 pass你这垃圾方案 朕就是这样决绝)
                    {flag=1; break;} 
                    //if o_x 联边只要有一个端点在vis摧毁区就孤立了 俗称唇亡齿寒(f = 0说明攻击方案暂且可行)
            }
            if(!flag)
                printf("YES
    ");//检查所有结盟对发现都被打散了 要么垮某一个 要么全垮了 ojbk
            else
                printf("NO
    "); //剩余的城市并没有都变成孤立无援
        }
        return 0;
    }
    View Code
  • 相关阅读:
    Iterator 迭代器
    Collection-List
    Collection-Set
    Collection
    多线程
    面向对象<高级>知识点
    链表
    面向对象<基础>知识点
    三层架构和MVC模式详解
    impala为什么比hive快
  • 原文地址:https://www.cnblogs.com/Roni-i/p/8699066.html
Copyright © 2011-2022 走看看