Time Limit: 1 second

Memory Limit: 128 MB

【问题描述】

新牛到部队,CG要求它们每天早上搞晨跑,从A农场跑到B农场。从A农场到B农场中有n-2个路口,分别标上号,A农场为1号,B农场

为n号,路口分别为2…n-1号,从A 农场到B农场有很多条路径可以到达,而CG发现有的路口是必须经过的,即每条路径都经过

的路口,CG要把它们记录下来,这样CG就可以先到那个路口,观察新牛们有没有偷懒,而你的任务就是找出所有必经路口。

【输入格式】

第一行两个用空格隔开的整数n(3≤n≤2000)和e(1≤e≤8000)。

接下来从第2到第e+1行,每行两个用空格隔开的整数p和q,表示路口p和q之间有路径直达。

输入数据保证必经路口一定存在,并且每个路口都和A农场、B农场相连通。

【输出格式】

第一行一个整数m,表示必经路口的数目。

第二行按从小到大的顺序依次输出每个必经路口的编号,每两个数之间用一个空格隔开。

注意:不包括起点和终点。

Sample Input

6 6

1 2

2 4

2 3

3 5

4 5

5 6

Sample Output

2

2 5

【题目链接】:http://noi.qz5z.com/viewtask.asp?id=t082

【题解】



枚举第i个点;

把这个点删掉;(dfs的时候忽略这个点就好);

然后从点1开始dfs;

看看能不能从点1到点n;

如果不可以到n那么就表明删掉的这个点是个必经点;

(会有环。。所以加个bool数组吧。不然9个RE在等着你)



【完整代码】

  1. #include <cstdio>
  2. #include <vector>
  3. using namespace std;
  4. #define rei(x) scanf("%d",&x)
  5. #define rep1(i,x,y) for (int i = x;i <= y;i++)
  6. #define pb push_back
  7. const int MAXN = 2e3+100;
  8. int n,e,dd;
  9. bool bo[MAXN];
  10. vector <int> G[MAXN],v;
  11. void dfs(int x)
  12. {
  13. bo[x] = true;
  14. int len = G[x].size();
  15. rep1(i,0,len-1)
  16. {
  17. int y = G[x][i];
  18. if (!bo[y] && y!=dd)
  19. dfs(y);
  20. }
  21. }
  22. int main()
  23. {
  24. //freopen("F:\\rush.txt","r",stdin);
  25. rei(n);rei(e);
  26. rep1(i,1,e)
  27. {
  28. int x,y;
  29. rei(x);rei(y);
  30. G[x].pb(y);
  31. G[y].pb(x);
  32. }
  33. rep1(ee,2,n-1)
  34. {
  35. rep1(i,1,n)
  36. bo[i] = false;
  37. dd = ee;
  38. bo[1] = true;
  39. dfs(1);
  40. if (!bo[n])
  41. v.pb(ee);
  42. }
  43. int len = v.size();
  44. printf("%d\n",len);
  45. rep1(i,0,len-1)
  46. {
  47. printf("%d",v[i]);
  48. if (i==len-1)
  49. puts("");
  50. else
  51. putchar(' ');
  52. }
  53. return 0;
  54. }

【t082】牛跑步的更多相关文章

  1. Bzoj 1598: [Usaco2008 Mar]牛跑步 dijkstra,堆,K短路,A*

    1598: [Usaco2008 Mar]牛跑步 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 427  Solved: 246[Submit][St ...

  2. bzoj 1598: [Usaco2008 Mar]牛跑步 [k短路 A*] [学习笔记]

    1598: [Usaco2008 Mar]牛跑步 题意:k短路 ~~貌似A*的题目除了x数码就是k短路~~ \[ f(x) = g(x) + h(x) \] \(g(x)\)为到达当前状态实际代价,\ ...

  3. BZOJ_1598_[Usaco2008 Mar]牛跑步_A*

    BZOJ_1598_[Usaco2008 Mar]牛跑步_A* Description BESSIE准备用从牛棚跑到池塘的方法来锻炼. 但是因为她懒,她只准备沿着下坡的路跑到池塘, 然后走回牛棚. B ...

  4. K短路 (A*算法) [Usaco2008 Mar]牛跑步&[Sdoi2010]魔法猪学院

    A*属于搜索的一种,启发式搜索,即:每次搜索时加一个估价函数 这个算法可以用来解决K短路问题,常用的估价函数是:已经走过的距离+期望上最短的距离 通常和Dijkstra一起解决K短路 BZOJ1598 ...

  5. bzoj 1598: [Usaco2008 Mar]牛跑步 -- 第k短路,A*

    1598: [Usaco2008 Mar]牛跑步 Time Limit: 10 Sec  Memory Limit: 162 MB Description BESSIE准备用从牛棚跑到池塘的方法来锻炼 ...

  6. 【BZOJ1598】牛跑步 [A*搜索]

    牛跑步 Time Limit: 10 Sec  Memory Limit: 162 MB[Submit][Status][Discuss] Description BESSIE准备用从牛棚跑到池塘的方 ...

  7. 【BZOJ】1598: [Usaco2008 Mar]牛跑步

    [题意]给定有向图,边严格从大编号指向小编号,求前k短路.n<=1000,m<=10000,k<=100. [算法]归并+拓扑排序||A*求第k短路 [题解]因为此题自带拓扑序的特殊 ...

  8. BZOJ 1598 牛跑步

    牛跑步 [问题描述] BESSIE准备用从牛棚跑到池塘的方法来锻炼. 但是因为她懒,她只准备沿着下坡的路跑到池塘, 然后走回牛棚. BESSIE也不想跑得太远,所以她想走最短的路经. 农场上一共有M ...

  9. [bzoj1598][Usaco08Mar]牛跑步_A*_Dijkstra

    牛跑步 bzoj-1598 题目大意:给你n个点,m条边的有向图.求从1到n的严格的第k短路. 注释:$1\le n\le 1000$,$1\le m \le 10,000$,$1\le k \le ...

随机推荐

  1. 洛谷——P3817 小A的糖果

    https://www.luogu.org/problem/show?pid=3817 题目描述 小A有N个糖果盒,第i个盒中有a[i]颗糖果. 小A每次可以从其中一盒糖果中吃掉一颗,他想知道,要让任 ...

  2. [React] Render Text Only Components in React 16

    In this session we create a comment component to explore how to create components that only render t ...

  3. Android代码模拟物理、屏幕点击事件

    一.应用中模拟物理和屏幕点击事件 例如,模拟对某个view的点击事件 private void simulateClick(View view, float x, float y) { long do ...

  4. invalid syntax 无效语法

    python用的是spyder编译器, 再出现上一行少了个括号的时候. 在下一行显示有错误.

  5. python投票统计程序,统计序列中各个数值的份数,字典的应用。

    这里可能会用到字典的知识, 字典主要是用来存储最后的统计结果. 字典的用法:http://www.runoob.com/python/python-dictionary.html https://ww ...

  6. 洛谷 P1510 精卫填海

    洛谷 P1510 精卫填海 题目描述 [版权说明] 本题为改编题. [问题描述] 发鸠之山,其上多柘木.有鸟焉,其状如乌,文首,白喙,赤足,名曰精卫,其名自詨.是炎帝之少女,名曰女娃.女娃游于东海,溺 ...

  7. hdu5389

    题意:给你n个人每一个人手里有一个id,然后给你两个数a和b.让你把n个人分为两组.条件是 一组人手里的id和等于a 另一组人的id和等于b,这里的和是指加起来之后对9取余,假设sum等于0 则sum ...

  8. Could not find action or result: There is no Action mapped for namespace [/] and action name [GetG

    Could not find action or result: /car/GetGpsDataAction  There is no Action mapped for namespace [/] ...

  9. LeetCode Algorithm 133_Clone Graph

    Clone an undirected graph. Each node in the graph contains a label and a list of its neighbors. OJ's ...

  10. (转)使用qemu-img管理虚拟机磁盘镜像(创建虚拟机,虚拟机快照)

    转自:http://blog.csdn.net/bravezhe/article/details/8461386 一台虚拟机的核心就是一个磁盘镜像,这个镜像可以理解成虚拟机的磁盘,里面有虚拟机的操作系 ...