L2-025 分而治之(图的处理)

简介: L2-025 分而治之(图的处理)

描述:

分而治之,各个击破是兵家常用的策略之一。在战争中,我们希望首先攻下敌方的部分城市,使其剩余的城市变成孤立无援,然后再分头各个击破。为此参谋部提供了若干打击方案。本题就请你编写程序,判断每个方案的可行性。

输入:

输入在第一行给出两个正整数 N 和 M(均不超过10 000),分别为敌方城市个数(于是默认城市从 1 到 N 编号)和连接两城市的通路条数。随后 M 行,每行给出一条通路所连接的两个城市的编号,其间以一个空格分隔。在城市信息之后给出参谋部的系列方案,即一个正整数 K (≤ 100)和随后的 K 行方案,每行按以下格式给出:


Np v[1] v[2] ... v[Np]

1

其中 Np 是该方案中计划攻下的城市数量,后面的系列 v[i] 是计划攻下的城市编号。


输出:

对每一套方案,如果可行就输出YES,否则输出NO。


思路:

把图存储下来,对于每次询问把攻下的城市记录下来,然后根据记录去图中做判断即可

#include<bits/stdc++.h>
using namespace std;
typedef unsigned long long ull;
typedef long long ll;
const ll maxx = 1e18;
const int N = 1e5+100;
const int p = 1e4+10;
const double eps = 1e-8;
vector<int>ve[10001];//建图
int n,m;
int a,b;
int k,cnt,ms;
bool vis[p];
int judge()
{
  for(int i=1;i<=n;i++)
  {
    if(!vis[i])
    {
      int len=ve[i].size();
      for(int j=0;j<len;j++)
      {
        if(vis[ve[i][j]]!=1)
          return 0;
      } 
    }
  }//所有的非标记点中,出现相邻点非标记点,即非孤立
  return 1;
}
int main()
{
  cin>>n>>m;
  for(int i=1;i<=m;i++)
  {
    cin>>a>>b;
    ve[a].push_back(b);
    ve[b].push_back(a);
  }//建图
  cin>>k;
  while(k--)
  {
    memset(vis,0,sizeof(vis));//每一次把标记数组清空
    cin>>cnt;
    for(int i=1;i<=cnt;i++)
    {
      cin>>ms;
      vis[ms]=1;
    }//输入所有标记点
    if(judge()==1)  printf("YES\n");
    else printf("NO\n");
  }
}

目录
相关文章
|
3月前
|
机器学习/深度学习 存储 人工智能
图搜索算法详解
【5月更文挑战第11天】本文介绍了图搜索算法的基础知识,包括深度优先搜索(DFS)、广度优先搜索(BFS)和启发式搜索(如A*算法)。讨论了图搜索中的常见问题、易错点及避免方法,并提供了BFS和A*的Python代码示例。文章强调了正确标记节点、边界条件检查、测试与调试以及选择合适搜索策略的重要性。最后,提到了图搜索在路径规划、游戏AI和网络路由等领域的应用,并概述了性能优化策略。
69 3
|
3月前
|
存储 算法
图的深度优先算法
图的深度优先算法
30 0
|
3月前
|
算法 Java 图计算
图计算中的最短路径算法是什么?请解释其作用和常用算法。
图计算中的最短路径算法是什么?请解释其作用和常用算法。
39 0
|
10月前
|
算法 测试技术 C++
C++算法:图中的最短环
C++算法:图中的最短环
|
10月前
|
算法 定位技术 调度
算法:贪婪算法、分而治之
算法:贪婪算法、分而治之
|
机器学习/深度学习
离散数学_十章-图 ( 4 ):图的表示和图的同构
离散数学_十章-图 ( 4 ):图的表示和图的同构
236 0
|
算法
【数据结构和算法】图的应用(最小生产树、最短路径、拓扑排序、关键路径)
【数据结构和算法】图的应用(最小生产树、最短路径、拓扑排序、关键路径)
245 0
【数据结构和算法】图的应用(最小生产树、最短路径、拓扑排序、关键路径)
|
机器学习/深度学习 数据挖掘 大数据
层次分析法(AHP)原理以及应用
层次分析法(AHP)原理以及应用
2388 0
层次分析法(AHP)原理以及应用
|
算法
回溯法——图m染色问题
回溯法——图m染色问题
182 0
L2-025 分而治之 (25 分)(图论)
L2-025 分而治之 (25 分)(图论)
117 0