AcWing
  • 首页
  • 活动
  • 题库
  • 竞赛
  • 应用
  • 更多
    • 题解
    • 分享
    • 商店
    • 问答
    • 吐槽
  • App
  • 登录/注册

AcWing 853. 有边数限制的最短路

作者: 作者的头像   Yangchang ,  2023-01-25 20:52:33 ,  所有人可见 ,  阅读 11


0


#include<bits/stdc++.h>
using namespace std;
const int maxn  = 1e5+10;

struct{int u,v,w;} edge[maxn];
int cnt,n,m,k,dis[maxn],was[maxn];

int main(){
    cin>>n>>m>>k;
    memset(dis+1,0x3f,sizeof(dis[0])*(n));
    dis[1] = 0;
    for(int i = 1;i<=m;++i) cin>>edge[i].u>>edge[i].v>>edge[i].w;

    for(int i = 1;i<=k;++i){
        memcpy(was,dis,sizeof(dis[0])*(n+1));
        for(int j = 1;j<=m;++j)
            dis[edge[j].v] = min(dis[edge[j].v],was[edge[j].u] + edge[j].w);
    }
    if(dis[n] >= 0x0f3f3f3f) cout<<"impossible";
    else cout<<dis[n];
}

0 评论

你确定删除吗?
1024
x

© 2018-2023 AcWing 版权所有  |  京ICP备17053197号-1
用户协议  |  隐私政策  |  常见问题  |  联系我们
AcWing
请输入登录信息
更多登录方式: 微信图标 qq图标
请输入绑定的邮箱地址
请输入注册信息