我做题半夜3点多一看这道题果断floyd,后来tle,仔细想想也是啊!!后来用并查集,一顿re,这!!!睡一觉起来看看discuss说深搜,我就果断写一个,tle这!!!后来看了别人的深搜代码,果然有一个很大的优化,于是乎我小改一下map[x][++map[x][0]]=y,A了,画手这个优化不错,一起都是那种大暴力的搜
#include<iostream>
using namespace std;
int k,n,m,x,y;
int a[150],map[1005][1005],p[1005],vis[1005],p1[1005];
void dfs(int i)
{
vis[i]=1;
p[i]++;
for(int j=1;j<=map[i][0];j++)
{
if(!vis[map[i][j]])
{
dfs(map[i][j]);
vis[i]=0;
}
}
return ;
}
int main()
{
while(scanf("%d%d%d",&k,&n,&m)!=EOF)
{
memset(p1,0,sizeof(p1));
for(int i=0;i<=n;i++)
{
for(int j=0;j<=n;j++)
map[i][j]=0;
}
for(int i=1;i<=k;i++)
scanf("%d",&a[i]);
while(m--)
{
scanf("%d%d",&x,&y);
map[x][++map[x][0]]=y; //这里是一个优化,可以缩小我对x联通路线的查找范围
}
for(int i=1;i<=k;i++)
{
for(int i=0;i<=n;i++)
{
vis[i]=0;
p[i]=0;
}
dfs(a[i]);
for(int i=1;i<=n;i++)
{
if(p[i])
p1[i]++;
}
}
int ans=0;
for(int i=1;i<=n;i++)
{
if(p1[i]==k)
ans++;
}
printf("%d\n",ans);
}
return 0;
}

poj 3256 Cow Picnic 优化深搜相关推荐

  1. Poj(2488),按照字典序深搜

    题目链接:http://poj.org/problem?id=2488 思路:按照一定的字典序深搜,当时我的想法是把所有的可行的路径都找出来,然后字典序排序. 后来,凡哥说可以在搜索路径的时候就按照字 ...

  2. 简单深搜(poj 3009)

    题目链接:http://poj.org/problem?id=3009 题目:冰壶撞向目的地,只有遇到"1"才能停下来,并且把"1"撞成"0" ...

  3. POJ 1562深搜判断连体油田个数

    http://poj.org/problem?id=1562 大意:输入mp二维矩阵,规定'@'连体的包括对角线为一片油田,统计共有多少油田.深搜方向数组dir设置8个方向遇到@继续搜索把当前位置赋值 ...

  4. ROADS POJ - 1724(限制条件的最短路)【邻接表+深搜】

    思路:先说下题意,题意第一行给了一个k,代表你有k的钱数,下一行有一个n,代表n个点,然后一个m,代表m条边,然后接下来m行,每行有四个数,分别代表起点.终点.路径长度和要花费的钱数,题目想问在花的钱 ...

  5. poj 1950 Dessert 深搜

    题意: 给n,问有多少和由1,2...n,和'+','-','.'(表示连接,4.5表示45)组成,值为0的表达式. 分析: 深搜,因为要枚举到"连接"的情况,所以传送pre表示上 ...

  6. POJ 3414 Pots(深搜并打印路径)

    POJ 3414 Pots(深搜并打印路径) You are given two pots, having the volume of A and B liters respectively. The ...

  7. I - 滑雪 POJ - 1088(深搜,记忆化搜索)

    Michael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激.可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你.Michael想知道载一个区域中最长底滑坡. ...

  8. poj—2488骑士的旅程(深搜)

    题目: 骑士厌倦了一次又一次地看到相同的黑白方块,并决定 环游世界.每当骑士移动时,它都是一个方向上的两个正方形和一个垂直于此方向的正方形.骑士的世界就是他所生活的棋盘.我们的骑士住在一个棋盘上,这个 ...

  9. 有趣的题目:简单深搜之数独与靶型数独--二进制状压加速与dfs数独剪枝

    Sudoku Time Limit: 2000MS   Memory Limit: 65536K 题目链接http://poj.org/problem?id=2676 Description Sudo ...

  10. 洛谷 P2853 Cow Picnic S(DFS)

    https://www.luogu.com.cn/problem/P2853 题目大意 k头牛在n个点上,m条有向边,统计那些所有牛都能到达的点的个数 思路 很容易就想到,以每头牛为起点去深搜,能走到 ...

最新文章

  1. typedef的四个用途和两大陷阱
  2. 你有哪些deep learning(rnn、cnn)调参的经验?
  3. BZOJ4543/BZOJ3522 [POI2014]Hotel加强版(长链剖分)
  4. redis 生成dump.rdb文件
  5. Journey to Un‘Goro 贪心,找规律,搜索(沈阳)
  6. intel服务器芯片组介绍,Intel芯片组的简介
  7. Asp.Net Core 5 REST API 使用 JWT 身份验证 - Step by Step(二)
  8. linux获取字符格式化,Linux 格式化字符串漏洞利用
  9. zoj[3868]gcd期望
  10. 热烈庆祝阳光网驿-行业软件交流平台与北京汉邦极通科技有限公司成功合作
  11. 传统会计和计算机会计的职能,论会计信息化对传统财务会计职能的影响
  12. 学历学籍系统-Web服务开发实验(REST API)
  13. 从DLL生成LIB文件
  14. Android 一共有多少种动画?准确告诉你!
  15. html之ins标签
  16. 一天一块钱第二天翻倍_再把钱翻倍
  17. 弱网测试:使用netem模拟网络延迟、丢包、损坏、重复、和乱序等网络问题
  18. android+仿豌豆荚界面,android仿豌豆荚风格的上滑缩放悬停title (缩放主页背景)
  19. ​​【​观察】别让“千里之堤,毁于蚁穴”!
  20. Matplotlib subplot2grid()函数详解

热门文章

  1. 选课系统类图与数据结构图
  2. shell中使用if判断时用到的一些参数
  3. 我对hibernate的对象的3种状态的理解
  4. Kalman filter—直观理解
  5. wireshark的简单使用:在二进制流中还原出zip文件
  6. UNIX网络编程卷1 时间获取程序server UDP 协议无关
  7. eclipse启动时间很慢的调优解决
  8. 使用xampp和tiki搭建内网wiki
  9. SVG 动画(animate、animateTransform、animateMotion)
  10. 如何通过iMazing导出Safari浏览器的历史记录