HAUTOJ 1262 魔法宝石

来源:互联网 发布:数据库课程视频 编辑:程序博客网 时间:2024/04/29 16:57

题目链接:HAUTOJ 1262

很简单的一道题 就是注意 需要循环N次 直到最小的不再发生变化

#include<iostream>using namespace std;int main(){    int T;    cin>>T;    while(T--)    {        int n,m,s[100005],q[100005][3],i,j,k,min[100005],sum;        cin>>n>>m;        for(i=1;i<=n;i++)        {        cin>>s[i];        min[i]=s[i];        }        for(i=1;i<=m;i++)        cin>>q[i][0]>>q[i][1]>>q[i][2];        int o=50;  //控制循环,直到最小的不再变化         while(o--)        for(i=1;i<=m;i++)        {            sum=min[q[i][0]]+min[q[i][1]];            if(sum<min[q[i][2]])min[q[i][2]]=sum;        }        cout<<min[1];        for(i=2;i<=n;i++)        cout<<" "<<min[i];        cout<<endl;    }    return 0; }


0 0
原创粉丝点击