题意:给一个图,若干询问,每次询问只经过边权<=w的边,x能到达的点数

并查集啊,对询问和边排序,直接合并,维护size,查询

  1. #include<cstdio>
  2. #include<cstring>
  3. #include<iostream>
  4. #include<algorithm>
  5. #include<cmath>
  6. #define N 105000
  7. using namespace std;
  8. int fa[N],size[N],n,m,k;
  9. struct data{
  10. int u,v,w;
  11. }d[4*N];
  12. bool cmpd(data a,data b){return a.w<b.w;}
  13. struct query{
  14. int u,w,ans,id;
  15. }q[N];
  16. bool cmpq(query a,query b){return a.w<b.w;}
  17. bool back(query a,query b){return a.id<b.id;}
  18. int find(int x){
  19. if(fa[x]==x)return x;
  20. fa[x]=find(fa[x]);
  21. return fa[x];
  22. }
  23. void hb(int x,int y){
  24. x=find(x);y=find(y);
  25. if(x==y)return;
  26. fa[y]=x;size[x]+=size[y];
  27. }
  28. int main(){
  29. scanf("%d%d%d",&n,&m,&k);
  30. for(int i=1;i<=n;i++){fa[i]=i;size[i]=1;}
  31. for(int i=1;i<=m;i++)
  32. scanf("%d%d%d",&d[i].u,&d[i].v,&d[i].w);
  33. sort(d+1,d+m+1,cmpd);
  34. for(int i=1;i<=k;i++){
  35. scanf("%d%d",&q[i].u,&q[i].w);
  36. q[i].id=i;
  37. }
  38. sort(q+1,q+k+1,cmpq); q[k+1].w=q[k].w+1;
  39. int now=q[1].w,ee=1,pos=1;
  40. while(now<=q[k].w){
  41. for(;ee<=m&&d[ee].w<=now;ee++)
  42. hb(d[ee].u,d[ee].v);
  43. for(;q[pos].w==now;pos++)
  44. q[pos].ans=size[find(q[pos].u)];
  45. now=q[pos].w;
  46. }
  47. sort(q+1,q+k+1,back);
  48. for(int i=1;i<=k;i++)
  49. printf("%d\n",q[i].ans);
  50. return 0;
  51. }

Travel 并查集的更多相关文章

  1. bzoj 1576: [Usaco2009 Jan]安全路经Travel——并查集+dijkstra

    Description Input * 第一行: 两个空格分开的数, N和M * 第2..M+1行: 三个空格分开的数a_i, b_i,和t_i Output * 第1..N-1行: 第i行包含一个数 ...

  2. hdu 5441 Travel(并查集)

    Problem Description Jack likes to travel around the world, but he doesn’t like to wait. Now, he is t ...

  3. HDU5441 Travel 并查集

    http://acm.hdu.edu.cn/showproblem.php?pid=5441 无向图,n个点,m条带权边,q次询问,给出数值d,点a可以到点b当且仅当存在一条路线其中最大的权值不超过d ...

  4. 【BZOJ-1576】安全路径Travel Dijkstra + 并查集

    1576: [Usaco2009 Jan]安全路经Travel Time Limit: 10 Sec  Memory Limit: 64 MBSubmit: 1044  Solved: 363[Sub ...

  5. hdu 5441 travel 离线+带权并查集

    Time Limit: 1500/1000 MS (Java/Others)  Memory Limit: 131072/131072 K (Java/Others) Problem Descript ...

  6. hdu 5441 Travel 离线带权并查集

    Travel Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=5441 De ...

  7. Travel(HDU 5441 2015长春区域赛 带权并查集)

    Travel Time Limit: 1500/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)Total Su ...

  8. 【BZOJ1576】[Usaco2009 Jan]安全路经Travel 最短路+并查集

    [BZOJ1576][Usaco2009 Jan]安全路经Travel Description Input * 第一行: 两个空格分开的数, N和M * 第2..M+1行: 三个空格分开的数a_i, ...

  9. HDU 5441——Travel——————【并查集+二分查界限】

    Travel Time Limit: 1500/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)Total Su ...

随机推荐

  1. 你不知道你不懂javascript

    过去几年我注意到技术圈一个很奇怪的现象,有太多程序员将那些他们只是有过非常浅显的了解, 但其实根本就不懂的技术写到他们的简历中,这个现象几乎每种语言都有,但这其中最严重的就要数javascript了. ...

  2. CXF 5参考资料

    下载 描述 名字 大小 下载方法 本教程示例应用程序的源代码 CXF_Spring_Survey_Src.war 10 KB HTTP 关于下载方法的信息 学习 Apache CXF 的官方站点:提供 ...

  3. Java反射之调用内部类

    1. 反射调用默认访问权限的内部类 package com.blueStarWei.invoke; import java.lang.reflect.Method; import com.blueSt ...

  4. 【Web页面测试】测试点和测试用例

    1. 需求符合度测试 1. 各级菜单名称显示是否按照需求说明书规定的设计,并且没有遗漏和多余 2. 各级菜单所完成的功能是否按照需求说明书规定的设计,并且没有遗漏和多余 3. 各级菜单的操作顺序和操作 ...

  5. 学会分析YUV数据

    做视频采集与处理,自然少不了要学会分析YUV数据.因为从采集的角度来说,一般的视频采集芯片输出的码流一般都是YUV数据流的形式,而从视频处理(例如H.264.MPEG视频编解码)的角度来说,也是在原始 ...

  6. django2.0升级日记

    1.大量的外键定义需要加on_delete参数 2.'WSGIRequest' object has no attribute 'session',这个问题是因为settings中middleware ...

  7. Java main方法全解

    1.main方法的重载 package cn.nxl2018; public class Main_test { public static void main(String args[]) { Sy ...

  8. The Beam Model:Stream &amp; Tables翻译(上)

    本文由  网易云发布. 作者:周思华 本篇文章仅限内部分享,如需转载,请联系网易获取授权. 本文尝试描述Beam模型和Stream & Table理论间的关系(前者描述于数据流模型论文.the ...

  9. Flask表单(Flask-WTF)

    1.request.from获取POST表单数据 # hello.py #coding:utf-8 from flask import Flask,request,render_template ap ...

  10. Python3 urllib.request库的基本使用

    Python3 urllib.request库的基本使用 所谓网页抓取,就是把URL地址中指定的网络资源从网络流中读取出来,保存到本地. 在Python中有很多库可以用来抓取网页,我们先学习urlli ...