P4009 汽车加油行驶问题(spfa)
发布日期:2021-06-27 21:40:32
浏览次数:1
分类:技术文章
本文共 1078 字,大约阅读时间需要 3 分钟。
汽车加油
解题思路
建边 再spfa
AC代码
#include#include #include using namespace std;int N,K,A,B,C,tot,c[1000005],head[1000005],a[105][105];int dx[4]={ -1,1,0,0};int dy[4]={ 0,0,-1,1};int dd[4]={ 1,0,1,0};long long ans,d[1000005];queue q;struct node{ int to,w,next; }aa[2000005];int num(int x,int y,int z)//给个编号{ return z*N*N+(x-1)*N+y;}bool check(int x,int y)//判断{ if(x>=1&&x<=N&&y>=1&&y<=N)return 1; return 0;}void add(int x,int y,int z)//建表{ aa[++tot]=(node){ y,z,head[x]}; head[x]=tot;}void spfa()//spfa{ memset(d,0x7f,sizeof(d)); c[num(1,1,K)]=1; d[num(1,1,K)]=0; q.push(num(1,1,K)); while(!q.empty()) { int x=q.front(); q.pop(); for(int i=head[x];i;i=aa[i].next) { int y=aa[i].to; if(d[y]>d[x]+aa[i].w*1ll) { d[y]=d[x]+aa[i].w*1ll; if(!c[y])c[y]=1,q.push(y); } } c[x]=0; }}int main(){ scanf("%d%d%d%d%d",&N,&K,&A,&B,&C); for(int i=1;i<=N;i++) for(int j=1;j<=N;j++) scanf("%d",&a[i][j]); for(int i=1;i<=N;i++) for(int j=1;j<=N;j++) { for(int k=0;k
谢谢
转载地址:https://blog.csdn.net/weixin_45524309/article/details/117084580 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
第一次来,支持一个
[***.219.124.196]2024年03月20日 05时32分19秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
java ssm 异常分类_SSM项目常见的异常与处理提示(一)
2019-04-21
java定义矩形类_Java定义矩形类
2019-04-21
java变量怎么变常量_Java的常量与变量是什么?怎么学习呀?
2019-04-21
java开发招聘试题_客户化开发招聘试题-Java开发.doc
2019-04-21
java jdk win10 1335_win10下安装java jdk,tomcat
2019-04-21
php中的变量名称用什么表示,PHP变量,方法,类等名称中的有效字符是什么?
2019-04-21
solr比mysql的优势_Solr与Elasticsearch的优缺点比较总结和归纳
2019-04-21
华为博士招聘上机考试题目_牛客网-华为-2020届校园招聘上机考试-3
2019-04-21
python中for可以做变量名吗_Python中使用动态变量名的方法
2019-04-21
mysql 日期转换天数_MySQL 日期操作 增减天数、时间转换、时间戳
2019-04-21
java对象去重复_JAVA中List对象去除重复值的方法
2019-04-21
java bss_[转] .bss段和.data段的区别
2019-04-21
java上传图片损坏_大神求助 上传图片后 图片损坏
2019-04-21
java socket唯一标识符_Java Socket编程之常识网络基础知识
2019-04-21
java给xyz大小排序_java递归实现string xyz排序
2019-04-21
arctime必须要java_Arctime使用教程 Arctime常见问题解答
2019-04-21