最短路的优先队列做法:

#include<stdio.h>

#include<queue>

#include<string.h>

#define N  100010

#define inf 0x3fffffff

using namespace std;

int first[N],next[N],u[N],v[N],w[N],d[N];

int main()

{

int t,i,e,cnt,dis,n;

scanf("%d",&t);

while(t--)

{

scanf("%d%d",&n,&dis);

for(i=0;i<n;i++)

first[i]=-1;

for(i=0;i<n-1;i++)

{

scanf("%d%d",&u[i],&v[i]);

w[i]=1;

next[i]=first[u[i]];

first[u[i]]=i;

}

priority_queue<int ,vector<int>,greater<int> >q;

        int done[N];

for(i=0;i<n;i++)

d[i]=(i==0?0:inf);

memset(done ,0,sizeof(done));

q.push(0);

while(!q.empty())

{

int u=q.top();

q.pop();

if(done[u]) continue;

done[u]=1;

for(e=first[u];e!=-1;e=next[e])

   if(d[v[e]]>d[u]+w[e])

{

d[v[e]]=d[u]+w[e];

q.push(v[e]);

}

}

cnt=0;

for(i=0;i<n;i++)

{

if(d[i]>dis)

cnt++;

}

printf("%d\n",cnt);

}

return 0;

}









bellman-ford()写法,普通的队列写法:

#include<stdio.h>

#include<queue>

#include<string.h>

#define N  100010

#define inf 0x3fffffff

using namespace std;

int first[N],next[N],u[N],v[N],w[N],d[N];

int main()

{

int t,i,e,cnt,dis,n;

scanf("%d",&t);

while(t--)

{

scanf("%d%d",&n,&dis);

for(i=0;i<n;i++)

first[i]=-1;

for(i=0;i<n-1;i++)

{

scanf("%d%d",&u[i],&v[i]);

w[i]=1;

next[i]=first[u[i]];

first[u[i]]=i;

}

  queue<int>q;

        int done[N];

for(i=0;i<n;i++)

d[i]=(i==0?0:inf);

memset(done ,0,sizeof(done));

q.push(0);

while(!q.empty())

{

int u=q.front();

q.pop();

done[u]=0;

for(e=first[u];e!=-1;e=next[e])

   if(d[v[e]]>d[u]+w[e])

{

d[v[e]]=d[u]+w[e];

if(!done[v[e]])

{

     done[v[e]]=1;

 q.push(v[e]);

}

}

}

cnt=0;

for(i=0;i<n;i++)

{

if(d[i]>dis)

cnt++;

}

printf("%d\n",cnt);

}

return 0;

}

hdu 4707 bellman的更多相关文章

  1. hdu 4707 Pet(DFS水过)

    http://acm.hdu.edu.cn/showproblem.php?pid=4707 [题目大意]: Lin Ji 的宠物鼠丢了,在校园里寻找,已知Lin Ji 在0的位置,输入N D,N表示 ...

  2. HDU 4707 Pet(BFS)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4707 题目大意:在一个无环的,从0开始发散状的地图里,找出各个距离0大于d的点的个数 Sample I ...

  3. HDU 4707 Pet 邻接表实现

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4707 解题报告:题目大意是在无向图G中有n个点,分别从0 到n-1编号,然后在这些点之间有n-1条边, ...

  4. hdu 4707 Pet【BFS求树的深度】

    Pet                                                          Time Limit: 4000/2000 MS (Java/Others)  ...

  5. HDU 4707 DFS

    Problem Description One day, Lin Ji wake up in the morning and found that his pethamster escaped. He ...

  6. HDU 4707:Pet

    Pet Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submis ...

  7. Pet(hdu 4707 BFS)

    Pet Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submiss ...

  8. hdu 4707 Pet hdu 2013 Asia Regional Online —— Warmup

    一道简单的搜索题目,建一个树,根节点是 0 ,连接的两个节点的距离是 1 ,求 到 根节点长度是2的节点的个数. #include<stdio.h> #include<string. ...

  9. hdu 4707 搜索 目前做的最水的搜索

    直接深搜  ,水啊 #include<cstdio> #include<cstring> #include<algorithm> using namespace s ...

随机推荐

  1. PKUACM2018 A Wife——DP

    题目:http://poj.openjudge.cn/practice/C18A/ 据说正解是差分约束,转化的过程还要用到标准型.对偶型什么的知识,暂时还不太懂... 但也有贪心DP做法,有个结论:一 ...

  2. openStack调试

  3. oracle更新大量数据太慢,可以通过游标实现的例子

    declare cursor city_cur isselect t.new_customer_id,t.old_customer_id from citsonline.crm_customer_tm ...

  4. C. Searching for Graph(cf)

    C. Searching for Graph time limit per test 1 second memory limit per test 256 megabytes input standa ...

  5. discuz的全局变量

    $_G 保存了 discuz! 中所有的预处理数据 缓存能够很好的提高程序的性能,一些配置数据没必要每次都查询数据库,只要在修改了的时候更新下缓存即可. Discuz! 中所有的缓存保存在 $_G[c ...

  6. 题目收藏夹(啥时候一遍A啥时候删)

    以下题目为没有思路或代码离谱错误或看了题解才会的,间隔一周以上再做一遍A掉就删. bzoj1500 bzoj2287 codevs1358 bzoj1725

  7. 面试说熟练掌握各种MQ?那你先看看这道题,面试官必问!

    写在前面 我们知道,目前市面上的MQ包括Kafka.RabbitMQ.ZeroMQ.RocketMQ等等. 那么他们之间究竟有什么本质区别,分别适用于什么场景呢? 上述抛出的问题,同样在不少公司的Ja ...

  8. HDU 5279 分治NTT 图的计数

    思路: 显然每个子图内都是森林 去掉所有子图1和n都连通且每条大边都存在的情况 直接DP上 NTT优化一波 注意前两项的值.. //By SiriusRen #include <bits/std ...

  9. 【洛谷4770/UOJ395】[NOI2018]你的名字(后缀数组_线段树合并)

    题目: 洛谷4770 UOJ395 分析: 一个很好的SAM应用题-- 一句话题意:给定一个字符串\(S\).每次询问给定字符串\(T\)和两个整数\(l\).\(r\),求\(T\)有多少个本质不同 ...

  10. Android 显示意图和隐式意图的区别

    意图在android的应用开发中是很重要的,明白了意图的作用和使用后,对开发会有很大帮助.如果没有把意图搞懂,以后开发应用会感觉缺些什么.        意图的作用:        1.激活组件   ...