ccf-170904-通信网络

题目分析:

有向图 如果a可以直接或者间接连接b则a与b相互知晓 一共有多少个点知道n个点

刚开始算错复杂度,优化后反而超时 。。。事实无脑爆搜这道题也是可取的因为只有1000个点

每次选定一个点start开始dfs,吧start所能到达的点全部找出来,记录在mp数组内,所连接点的个数记录在num[]数组中

一个小优化 。事实不优化也能过。当dfs过程中 发现start点到达的点为n时就结束 没必要继续dfs了

 #include <iostream>
#include <algorithm>
#include <vector>
#include <cstdio>
#include <cstring>
using namespace std;
const int N=1e3+;
vector < vector <int> > g(N);
bool mp[N][N];
bool visit[N];
int num[N];
int start;
int n,m;
void dfs (int root) {
visit[root]=;
for (int i=;i<g[root].size();i++) {
int next=g[root][i];
if (!visit[next]) {
if (!mp[start][next]) {
mp[start][next]=mp[next][start]=;
num[next]++; num[start]++;
if (num[start]>=n) break;
}
dfs (next);
if (num[start]>=n) break;
}
}
return ;
}
int main ()
{
scanf ("%d %d",&n,&m);
for (int i=;i<=n;i++) {
mp[i][i]=; num[i]++;
}
for (int i=;i<=m;i++) {
int x,y; scanf ("%d %d",&x,&y);
g[x].push_back(y);
if (!mp[x][y]) {
mp[x][y]=mp[y][x]=;
num[x]++; num[y]++;
}
}
for (int i=;i<=n;i++) {
memset (visit,,sizeof(visit));
if (num[i]<n) {
start=i;
dfs (i);
}
}
int sum=;
for (int i=;i<=n;i++)
if (num[i]>=n)
sum++;
printf ("%d\n",sum);
return ;
}

ccf-170904-通信网络的更多相关文章

  1. 【CCF】通信网络 简单搜索

    去重!不然有环就直接挂掉了...0分 #include<iostream> #include<cstdio> #include<string> #include&l ...

  2. (ccf)201709-4 通信网络

    #include<iostream> #include<memory.h> #include<stack> #include<string> #incl ...

  3. CCF CSP 201709-4 通信网络

    CCF计算机职业资格认证考试题解系列文章为meelo原创,请务必以链接形式注明本文地址 CCF CSP 201709-4 通信网络 问题描述 某国的军队由N个部门组成,为了提高安全性,部门之间建立了M ...

  4. ccf认证 201709-4 通信网络 java实现

    试题编号:                                                               201709-4 试题名称: 通信网络 时间限制: 1.0s 内 ...

  5. 通信网络 ccf

    试题编号: 201709-4 试题名称: 通信网络 时间限制: 1.0s 内存限制: 256.0MB 问题描述: 问题描述 某国的军队由N个部门组成,为了提高安全性,部门之间建立了M条通路,每条通路只 ...

  6. CCF(通信网络):简单DFS+floyd算法

    通信网络 201709-4 一看到题目分析了题意之后,我就想到用floyd算法来求解每一对顶点的最短路.如果一个点和任意一个点都有最短路(不为INF),那么这就是符合的一个答案.可是因为题目超时,只能 ...

  7. 小dai浅谈通信网络(一)——引子

    说起通信网络,首先来看一个场景: 场景模式: 小明和小刚在闹市碰面. 小明对小刚大声喊道:"小刚,你好啊!" 小刚摇手答到:"你好,小明!" 就这么几句简单的话 ...

  8. 浅谈通信网络(三)——TCP/IP协议

    简介 Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议,是Internet最基本的协议.In ...

  9. csp 通信网络

    http://blog.csdn.net/zyy_1998/article/details/78334496 试题编号: 201709-4 试题名称: 通信网络 时间限制: 1.0s 内存限制: 25 ...

  10. 通信网络 2G 3G 4G 和路由器2.4G 5G的区分和关系

    通信网络 2G 3G 4G 和路由器2.4G 5G的区分和关系 作者:魔仙圆缘链接:https://www.zhihu.com/question/34076333/answer/57850104来源: ...

随机推荐

  1. Vue--项目开发之实现tabbar功能来学习单文件组件2

    上一篇文章里item.vue里的span标签内容是写死了,但是我们不希望写死 所以对于五个tab选项的标题需要从外部传入,也就说 需要在item.vue里的script里写上 export defau ...

  2. Linux command automake

    Linux command automake [Purpose]        Learning linux command automake for generate Makefile.in for ...

  3. python之路-python字符编码

    编码的发展 py2的字符编码 py3的字符编码 编码的发展: 编码表:编码是信息从一种形式或格式转换为另一种形式的过程也称为计算机编程语言的代码简称编码.编码表记录着我们常见的明文所对应的计算机二进制 ...

  4. python -input用户输入

    #接收用户输入信息用input就可以了 #还有输入密码的,也就是隐藏的,pycharm中不好用,要到命令行去 import getpass name = input('name:') age = in ...

  5. S2 深入.NET和C#编程 机试测试错题积累

    机试第一题:                              //创建文件流(路径 模式) FileStream fa = new FileStream(@"D:\\S2第一次全文 ...

  6. java编写本月日历

    代码如下: import java.time.*; public class Main { public static void main(String arg[]){ LocalDate date ...

  7. Java作业四

    1.先在一个包中编写第一个类ClassA,要求该类中具有四种不同访问权限的成员,再在另一个包中编写第二个类ClassB,并在该类中编写一个方法以访问第一个类中的成员.总结类成员访问控制的基本规则. p ...

  8. FindResource () RT_HTML 为什么总是出错呢 ?

    #include <windows.h> #include <commdlg.h> #include <ole2.h> BOOL GetHtmlResource(L ...

  9. PropertiesUtil 读取properties

    package com.midea.clean.util; import java.io.InputStream; import java.io.UnsupportedEncodingExceptio ...

  10. SharePoint online Multilingual support - Development(2)

    博客地址:http://blog.csdn.net/FoxDave 上一节讲了如何通过Code的方式设置Site和List级别的国际化,本节介绍一下如何设置Content type和Site co ...