题目传送门

  1. /*
  2. 最短路:Dijkstra算法,首先依照等级差距枚举“删除”某些点,即used,然后分别从该点出发生成最短路
  3. 更新每个点的最短路的最小值
  4. 注意:国王的等级不一定是最高的:)
  5. */
  6. #include <cstdio>
  7. #include <iostream>
  8. #include <algorithm>
  9. #include <cmath>
  10. #include <map>
  11. #include <vector>
  12. #include <cstring>
  13. #include <string>
  14. using namespace std;
  15. const int MAXN = 1e2 + ;
  16. const int INF = 0x3f3f3f3f;
  17. int d[MAXN];
  18. int cost[MAXN][MAXN];
  19. int x[MAXN];
  20. int lv[MAXN];
  21. int used[MAXN];
  22. int Dijkstra(int n)
  23. {
  24. for (int i=; i<=n; ++i) d[i] = cost[][i];
  25. for (int i=; i<=n; ++i)
  26. {
  27. int x = ;
  28. int mn = INF;
  29. for (int j=; j<=n; ++j)
  30. {
  31. if (!used[j] && d[j] < mn) mn = d[x=j];
  32. }
  33. if (x == ) break;
  34. used[x] = ;
  35. for (int j=; j<=n; ++j)
  36. {
  37. if (!used[j] && cost[x][j] > )
  38. d[j] = min (d[j], d[x] + cost[x][j]);
  39. }
  40. }
  41. return d[];
  42. }
  43. int main(void) //POJ 1062 昂贵的聘礼
  44. {
  45. //freopen ("C.in", "r", stdin);
  46. int n, m;
  47. while (~scanf ("%d%d", &m, &n))
  48. {
  49. memset (used, , sizeof (used));
  50. memset (d, , sizeof (d));
  51. memset (cost, , sizeof (cost));
  52. for (int i=; i<=n; ++i)
  53. {
  54. scanf ("%d%d%d", &cost[][i], &lv[i], &x[i]);
  55. for (int j=; j<=x[i]; ++j)
  56. {
  57. int t, u;
  58. scanf ("%d%d", &t, &u);
  59. cost[t][i] = u;
  60. }
  61. }
  62. int tmp, ans = INF, maxlv;
  63. for (int i=; i<=n; ++i)
  64. {
  65. maxlv = lv[i];
  66. for (int j=; j<=n; ++j)
  67. {
  68. if (lv[j] > maxlv || maxlv - lv[j] > m) used[j] = ;
  69. else used[j] = ;
  70. }
  71. tmp = Dijkstra (n);
  72. ans = min (ans, tmp);
  73. }
  74. printf ("%d\n", ans);
  75. }
  76. return ;
  77. }

最短路(Dijkstra) POJ 1062 昂贵的聘礼的更多相关文章

  1. POJ 1062 昂贵的聘礼(图论,最短路径)

    POJ 1062 昂贵的聘礼(图论,最短路径) Description 年轻的探险家来到了一个印第安部落里.在那里他和酋长的女儿相爱了,于是便向酋长去求亲.酋长要他用10000个金币作为聘礼才答应把女 ...

  2. poj 1062 昂贵的聘礼 (dijkstra最短路)

    题目链接:http://poj.org/problem?id=1062 昂贵的聘礼 Time Limit: 1000MS   Memory Limit: 10000K Total Submission ...

  3. POJ - 1062 昂贵的聘礼(最短路Dijkstra)

    昂贵的聘礼 Time Limit: 1000MS Memory Limit: 10000KB 64bit IO Format: %I64d & %I64u SubmitStatus Descr ...

  4. 最短路POJ 1062 昂贵的聘礼

    C - 昂贵的聘礼 Time Limit:1000MS     Memory Limit:10000KB     64bit IO Format:%I64d & %I64u Submit St ...

  5. POJ 1062 昂贵的聘礼(带限制条件的dijkstra)

    题目网址:http://poj.org/problem?id=1062 题目: 昂贵的聘礼 Time Limit: 1000MS   Memory Limit: 10000K Total Submis ...

  6. POJ 1062 昂贵的聘礼 (最短路)

    昂贵的聘礼 题目链接: http://acm.hust.edu.cn/vjudge/contest/122685#problem/M Description 年轻的探险家来到了一个印第安部落里.在那里 ...

  7. poj 1062 昂贵的聘礼 (有限制的最短路)

    昂贵的聘礼 Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 56594   Accepted: 17083 Descripti ...

  8. POJ 1062 昂贵的聘礼(最短路中等题)

    昂贵的聘礼 Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 51879   Accepted: 15584 Descripti ...

  9. POJ 1062 昂贵的聘礼

    C - 昂贵的聘礼 Time Limit:1000MS     Memory Limit:10000KB     64bit IO Format:%I64d & %I64u Submit St ...

随机推荐

  1. Hadoop之伪分布环境搭建

    搭建伪分布环境 上传hadoop2.7.0编译后的包并解压到/zzy目录下 mkdir /zzy 解压 tar -zxvf hadoop.2.7.0.tar.gz -C /zzy     配置hado ...

  2. Java中的final修饰符

    1.什么时候可以选择final修饰符 如果想让一个类不被其他类继承,不允许在有子类,这时候就要考虑用到final来修饰. 2.用final修饰的类 首先大家要明白,用final修饰的类是不能被继承的, ...

  3. Java笔记--泛型总结与详解

    泛型简介: 在泛型没有出来之前,编写存储对象的数据结构是很不方便的.如果要针对每类型的对象写一个数据结构,     则当需要将其应用到其他对象上时,还需要重写这个数据结构.如果使用了Object类型, ...

  4. Unity3D模型的细致纹理问题解决办法

    http://hunterwang.diandian.com/post/2012-09-28/40039798509 也许有人也遇到过同样的问题,也许解决方式不同,我来介绍一下偶尔尝试发现的解决办法. ...

  5. 彻底理解数字图像处理中的卷积-以Sobel算子为例

    彻底理解数字图像处理中的卷积-以Sobel算子为例 作者:FreeBlues 修订记录 2016.08.04 初稿完成 概述 卷积在信号处理领域有极其广泛的应用, 也有严格的物理和数学定义. 本文只讨 ...

  6. 7 Types of Regression Techniques you should know!

    翻译来自:http://news.csdn.net/article_preview.html?preview=1&reload=1&arcid=2825492 摘要:本文解释了回归分析 ...

  7. nginx学习(二):初识配置文件

    nginx的配置文件默认在nginx安装目录中的conf子目录中,主配置文件为nginx.conf, root@mgmserver conf]# pwd/usr/local/nginx/conf一.配 ...

  8. Aptana插件安装到eclipse和myeclipse的详细过程

    刚开始学习Jquery,为了搭建好的环境是很重要的,所以我尝试了很多方式,下面之一. 一.要下载好Aptana 插件 官网: http://update1.aptana.org/studio/3.2/ ...

  9. DICOM:DICOM3.0网络通信协议(续)

    转载:http://blog.csdn.net/zssureqh/article/details/44278693 题记: 近一年来一直坚持周末写博客,整理工作和闲暇之余的点点滴滴.对于新知识点.新技 ...

  10. [ruby on rails] 跟我学之(9)删除数据

    首先需要在index页加个删除链接,并提供一个删除的确认,用户确认删除时,直接删除数据. 修改views 修改 app/views/posts/index.html.erb,如下: <h1> ...