nzhtl1477-ただいま帰りました

题目描述

珂学题意:

你是威廉!你要做黄油蛋糕给珂朵莉吃~!

68号岛有n个商店,有的商店直接有小路连接,小路的长度都为1

格里克告诉了你哪些地方可能有做黄油蛋糕的原料

但是那个人是个坑货,所以

他会告诉你一些商店,然后告诉你距离这些商店距离<= k的商店中都是可能有原料的

然后你要把这些可能的商店每个都去一遍

你想知道你要去多少个商店

由于你是勇者,所以有m次询问

简洁题意:

给你一个图,每次查询的时候给一堆特殊点以及一个数k,求图中有多少点距离至少一个特殊点距离不超过k

边是无向的

输入输出格式

输入格式:

第一行三个数表示n,m,q

之后m行每行两个数x,y表示这两个点之间连有一条边~

之后q次询问,每个询问先给你一个数a和一个数k

之后一行a个数,表示a个特殊点

输出格式:

q行,每行一个数表示答案

输入输出样例

输入样例#1: 复制

5 6 6

2 3

1 3

2 5

1 3

3 2

2 5

1 1

3

1 1

1

1 4

1

1 2

5

1 4

1

1 4

5

输出样例#1: 复制

3

2

4

3

4

4

说明

对于30%的数据,n,m,q <= 100,每次查询只给一个点

对于另外30%的数据,k=1

对于100%的数据,n,m,q <= 5000 , a的和<= 500000

解析

在线操作;将每一个点加入队列中间,类似修改了的spfa算法;

同时将几个点加入,就可以将剩下的点按照离他们最近的中心点的距离计算出来;

#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define rint register intinline int read(){int x=0,f=0;char ch=getchar();while(!isdigit(ch)) f=(ch==45),ch=getchar();while( isdigit(ch)) x=(x<<1)+(x<<3)+(ch^48),ch=getchar();return f?(~x+1):x;
}#define man 5050struct edge{    int next,to;}e[man<<1];
int head[man<<1],num=0;inline void add(int from,int to){e[++num]=(edge){head[from],to};head[from]=num;
}int n,m,q;
int dis[man],vis[man],tot,k;int main(){memset(dis,63,sizeof(dis));n=read();m=read();q=read();for(rint i=1,x,y;i<=m;i++){x=read();y=read();add(x,y);add(y,x);}for(rint i=1,cnt;i<=q;i++){queue<int>q;tot=0;memset(vis,0,sizeof(vis));memset(dis,63,sizeof(dis));cnt=read();k=read();for(rint x,i=1;i<=cnt;i++){x=read();q.push(x);dis[x]=0;vis[x]=1;}do{int u=q.front();q.pop();for(rint i=head[u];i;i=e[i].next){int to=e[i].to;dis[to]=min(dis[to],dis[u]+1);if(!vis[to]) vis[to]=1,q.push(to);}}while(q.size());for(rint i=1;i<=n;i++)if(dis[i]<=k) tot++;        printf("%d\n",tot);}return 0;
}

转载于:https://www.cnblogs.com/Slager-Z/p/9889457.html

nzhtl1477-ただいま帰りました ( bfs )相关推荐

  1. HDU-1459.非常可乐(BFS )

    这道题TLE了很多次,原来一直以为将数字化为最简可以让运算更快,但是去了简化之后才发现,真正耗时的就是化简....还和队友学到了用状态少直接数组模拟刚就能过... 本题大意:给出可乐的体积v1,给出两 ...

  2. HDU1548:A strange lift(Dijkstra或BFS)

    题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1548 题意:电梯每层有一个数,例如第n层有个数k, 那么这一层只能上k层或下k层,但是不能低于一层或高 ...

  3. HDU 1429 胜利大逃亡(续) (BFS+位压缩)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1429 胜利大逃亡(续) Time Limit: 4000/2000 MS (Java/Others)  ...

  4. usaco Overfencing 穿越栅栏(BFS)

    Overfencing 穿越栅栏 农夫 John 在外面的田野上搭建了一个巨大的用栅栏围成的迷宫.幸运的是,他在迷宫的边界上留出 了两段栅栏作为迷宫的出口.更幸运的是,他所建造的迷宫是一个" ...

  5. 数据结构--搜索BFS

    文章目录 广度优先搜索 典型例题 广度优先搜索 广度优先搜索类似于树的层次遍历过程.它需要借助一个队列来实现.如图2-1-1所示,要想遍历从v0到v6的每一个顶点,我们可以设v0为第一层,v1.v2. ...

  6. 2017icpc沈阳 G Infinite Fraction Path BFS+剪枝

    题意:给一个长度为n的字符串数组,你可以选定起点跳n次,从i点只能跳到(i*i+1)%n的位置,最后求一个最大字典序. 思路:要求最大的,即每一步都是最大,所以将最大的数都入队进行bfs跳下一步. 剪 ...

  7. HDU - 5876 Sparse Graph 2016 ACM/ICPC 大连网络赛 I题 bfs+set+补图最短路

    题目链接 题意:给的补图,让你求一个源点到其他点的最短距离,因为图太稠密了, 用dij以及spfa根本不得行,这里只能用一种我不会方法来进行,这里用了bfs的方法以及set来维护,分别set维护一个未 ...

  8. 数据结构与算法(7-2)图的遍历(深度优先遍历DFS、广度优先遍历BFS)(分别用邻接矩阵和邻接表实现)

    目录 深度优先遍历(DFS)和广度优先遍历(BFS)原理 1.自己的原理图 2.官方原理图 一.邻接矩阵的深度优先遍历(DFS) 1.原理图 2. 过程: 3.总代码 二.邻接表的深度优先遍历(DFS ...

  9. hiho_1139_二分+bfs搜索

    题目 给定N个点和M条边,从点1出发,到达点T.寻找路径上边的个数小于等于K的路径,求出所有满足条件的路径中最长边长度的最小值.  题目链接:二分      最小化最大值,考虑采用二分搜索.对所有的边 ...

  10. fzu 2150 Fire Game 【身手BFS】

    称号:fzu 2150 Fire Game :给出一个m*n的图,'#'表示草坪,' . '表示空地,然后能够选择在随意的两个草坪格子点火.火每 1 s会向周围四个格子扩散,问选择那两个点使得燃烧全部 ...

最新文章

  1. 攻防世界Reverse第九题no-strings-attached
  2. MOSS2007的网站和工作区
  3. python数字编码_Python 编码为什么那么蛋疼?
  4. conda使用报错:ImportError:DLL load failed
  5. python-列表演练-根据学生id获取学生数据-获取学生数据中得分较高的前N条数据
  6. 调试器原理_调试器的工作原理
  7. CSS里各种垂直水平居中方式的基础用法
  8. android 模拟gps坐标,1020. Android GPS定位欺骗(模拟定位)的3类途径4种方式
  9. linux下查看分区信息和剩余空间大小
  10. [原]Jenkins(二十一) jenkins再出发Build periodically和Poll SCM
  11. visio画箭头时,如何去掉箭头的自动连接连接点(吸附)功能?
  12. TypeError this.getOptions is not a function 的解决
  13. linux下系统中的文件传输
  14. Base64加解密__完整版有解释
  15. Library Genesis
  16. Ebay跨境智星:全自动批量注册及下单软件
  17. MaterialEditText库使用详解
  18. 数字信号处理实验二:DFT的共轭对称性及应用
  19. 机器学习词汇翻译解释(2)
  20. python读取txt文件时去除换行符

热门文章

  1. oracle参数文件、控制文件、数据文件、日志文件的位置及查询方法
  2. vs2012 与 win7 不兼容的问题
  3. C#中往数据库插入/更新时候关于NUll空值的处理
  4. 解析 Page.MaintainScrollPositionOnPostBack 属性
  5. [原创]flex 3 + .net开发flash Remoting一 --- 开发环境
  6. THYMELEAF 如何用TH:IF做条件判断
  7. ES6-3 let进阶、const、全部变量与顶层对象
  8. vim中跳到第一行和最后一行
  9. 简易版jQuery——mQuery
  10. Inline函数使用注意事项