题目,挺无聊的。一个裸的最短路。n个点,你住在0,要去买东西,每个点有一个关门时间,问能最早买到食物的时间。有两点注意 (1)有重边 (2) 原图是dicrect连接。。。但不是有向边,被这个误导了。direct当直接讲……原图无向图。后面就是裸的dijkstra算法。

数据范围 点 N [0..100] 不知道为啥还有0.。。。

连边 数 M [1..10000]

连边按3元祖给书 A 里面数据范围  [0..99] B 里面数据范围 [0..99]是节点 C [0..10^5]表示从A到B的时间

还有一个长度为N的数组D,表示关门时间,数值范围 [-1..10^9]表示关门时间,-1表示已经关门了。

返回能买到食品的最早时间,买不到输出-1。

要求复杂度 时间 O(N^2) 空间 O(N^2)。

// you can also use includes, for example:
// #include <algorithm>int solution(const vector<int> &A, const vector<int> &B, const vector<int> &C, const vector<int> &D) {// write your code here...int n = D.size(),i,ind,m = A.size();if ((n == 0) || (D[0] >= 0)) {return 0;}vector<vector<int> > e;e.resize(n);for (i = 0; i < n; ++i) {e[i].resize(n, -1);}for (i = 0; i < m; ++i) {if ((e[A[i]][B[i]] < 0) || (e[A[i]][B[i]] > C[i])) {e[A[i]][B[i]] = e[B[i]][A[i]] = C[i];}}vector<bool> mark;mark.resize(n, false);vector<int> d;d.resize(n, -1);d[0] = 0;for (;;) {ind = -1;for (i = 0; i < n; ++i) {if ((!mark[i]) && (d[i] >= 0) && ((ind < 0) || (d[ind] > d[i]))) {ind = i;}}if (ind < 0) {break;}if (d[ind] <= D[ind]) {return d[ind];}   mark[ind] = true;for (i = 0; i < n; ++i) {if ((!mark[i]) && (e[ind][i] >= 0) && ((d[i] < 0) || (d[i] > d[ind] + e[ind][i]))) {d[i] = d[ind] + e[ind][i];}}}return -1;
}

转载于:https://www.cnblogs.com/pangblog/p/3285861.html

codility上的问题(26) Hydrogenium 2013相关推荐

  1. libcurl中上传文件的坑-英文操作系统中文路径无法上传返回26错误码

    libcurl中上传文件的坑-英文操作系统中文路径无法上传返回26错误码 最近在使用libcurl使用表单形式上传本地文件,自己测试的时候都没有问题,但是在测试的电脑上无法上传,返回26错误码,在li ...

  2. mac装linux fedora,桌面应用|在 MacBook Air 上安装 Fedora 26

    (写本文时)距离 Fedora 26 测试版发布已有几天,我认为是时候把它安装在我的 13 寸 MacBook Air 上了. 我这个 MacBook Air 的型号为 A1466 EMC 2925, ...

  3. codility上的问题 (22)

    问题描述: 用1 * 1, 1 * 2的矩形覆盖一个n行m列的矩形,问有多少种方法. 数据范围 : n [1..10^6],  m [ 1..7] 要求复杂度: 时间  O(log(n) * 8 ^m ...

  4. ECCV 2020 oral | 基于语义流的快速而准确的场景解析,在Cityscapes上达到80.4%mIoU,26 FPS...

    论文地址: https://arxiv.org/abs/2002.10120 代码地址: https://github.com/donnyyou/torchcv 该论文提出了一种有效且快速的场景解析方 ...

  5. ubuntu 禁用透明大页_如何在ubuntu上默认启用透明的大页面?

    如何在ubuntu上默认启用透明的大页面? $uname -a Linux yoda 3.5.0-23-generic #35~precise1-Ubuntu SMP Fri Jan 25 17:13 ...

  6. 互联网女皇的互联网报告2013版(详细)

    互联网女皇的互联网报告2013版(详细) Mary Meeker,硅谷风投机构 KPCB 的合伙人,由于每年她都会发布数据详实图表丰富的互联网报告,因此也有着互联网女皇之称.在昨天的 AllThing ...

  7. KPCB:2013年互联网女皇互联网趋势报告–解读版

    非常好的PPT素材,转自:http://www.199it.com/archives/119522.html Mary Meeker,硅谷风投机构 KPCB 的合伙人,由于每年她都会发布数据详实图表丰 ...

  8. SpringMVC上传文件以流方式判断类型附常用类型

    1 // 此类中判断类型所截取的byte 长度暂不确定,请使用者测试过使用 2 package com.tg.common.other; 3 4 import com.tg.common.tginte ...

  9. salesforce 零基础学习(四十二)简单文件上传下载

    项目中,常常需要用到文件的上传和下载,上传和下载功能实际上是对Document对象进行insert和查询操作.本篇演示简单的文件上传和下载,理论上文件上传后应该将ID作为操作表的字段存储,这里只演示文 ...

最新文章

  1. Ajax方式上传文件报错Uncaught TypeError: Illegal invocation
  2. mesos-dns marathon-lb
  3. C++在数字向量中找到出现奇数次的数字的算法实现(附完整源码)
  4. 只需三步就能做出可视化大屏的python工具,真香!
  5. 详解SpringCloud中RabbitMQ消息队列原理及配置,一篇就够!
  6. java中ares框架_ARES辅助开发工具-用户手册.doc
  7. Spring Boot 消息
  8. 7-4 输出三角形字符阵列 (15 分)
  9. python统计word页码_使用Python(win32com)在MS Word表中插入带页码的字段
  10. Symbian编程总结-基础篇-活动对象正解(1)-理解活动对象
  11. linux tricks 之数据对齐。
  12. 笔记本安装黑苹果后无法调节亮度的解决办法 | 小太阳
  13. 【移动应用趋势】2022 年值得关注的 15 大移动应用开发趋势
  14. 机器学习在社会科学中的应用
  15. 帕斯卡恒等式(二项式相关
  16. JavaScript高级04 正则表达式
  17. 使用@ResponseBody对象转json和@RequestBody进行json转对象案例
  18. java怎么画八卦图_自己画八卦图怎么画?电脑绘制八卦图|八卦图的简单画法
  19. 2019年第十届山东省acm省赛总结
  20. 12306买的票如何报销?可以网上打印吗?

热门文章

  1. VBA 中判断汉字的方法
  2. centos nginx不是命令_Nginx 在CentOS 6/7 上的安装与使用
  3. 解决pip安装时,下载速度慢的问题
  4. argparse.ArgumentParser
  5. 【JavaScript】parseInt
  6. win2012 R2的ntp时间同步设置解析
  7. SolrQuery的使用
  8. laravel判断HTTP请求是否ajax
  9. 找出重复的那个数字的异或算法
  10. 袁晖:C2B汽车电商模式创新