13212022-05-13 18:56:10nkdorka1212Hálózati átvitelcpp11Hibás válasz 3/5054ms7572 KiB
#include <bits/stdc++.h>

using namespace std;

int n,m,k,h;
vector<vector<pair<int,int>>>g;
vector<int>velocity;
vector<bool>pos;

void bellmann_ford()
{
    for(int i=1;i<=h;i++)
    {
        for(int j=1;j<=n;j++)
        {
            for(auto x:g[j])
            {
                if(velocity[x.first]<min(velocity[j],x.second))
                {
                    velocity[x.first]=min(velocity[j],x.second);
                }
            }
        }
    }
}

int main()
{
    cin>>n>>m>>k>>h;
    velocity.resize(n+1,0);
    g.resize(n+1);
    pos.resize(n+1);
    for(int i=1;i<=m;i++)
    {
        int u,v,w;
        cin>>u>>v>>w;
        g[u].push_back({v,w});
        g[v].push_back({u,w});
    }
    velocity[k]=INT_MAX;
    bellmann_ford();
    for(int i=1;i<=n;i++)
    {
        if(i==k)
        {
            cout<<0<<'\n';
        }else
        {
            cout<<velocity[i]<<'\n';
        }
    }
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base3/50
1Elfogadva0/02ms1832 KiB
2Hibás válasz0/01ms1860 KiB
3Hibás válasz0/12ms1912 KiB
4Hibás válasz0/12ms1920 KiB
5Hibás válasz0/21ms1936 KiB
6Hibás válasz0/21ms1944 KiB
7Hibás válasz0/22ms1964 KiB
8Hibás válasz0/22ms1984 KiB
9Hibás válasz0/12ms2020 KiB
10Hibás válasz0/14ms2060 KiB
11Elfogadva1/14ms2280 KiB
12Hibás válasz0/17ms2496 KiB
13Hibás válasz0/28ms2396 KiB
14Hibás válasz0/27ms2612 KiB
15Hibás válasz0/210ms2940 KiB
16Hibás válasz0/29ms3068 KiB
17Hibás válasz0/29ms3196 KiB
18Hibás válasz0/213ms3104 KiB
19Hibás válasz0/213ms3228 KiB
20Hibás válasz0/210ms3360 KiB
21Hibás válasz0/120ms3812 KiB
22Hibás válasz0/128ms4384 KiB
23Hibás válasz0/130ms4704 KiB
24Hibás válasz0/137ms4992 KiB
25Hibás válasz0/243ms5612 KiB
26Hibás válasz0/241ms5868 KiB
27Elfogadva2/254ms6244 KiB
28Hibás válasz0/225ms6484 KiB
29Hibás válasz0/226ms6768 KiB
30Hibás válasz0/237ms7024 KiB
31Hibás válasz0/225ms7292 KiB
32Hibás válasz0/227ms7572 KiB