96342024-02-23 15:51:35PallanekPéterHálózati átvitelcpp14Elfogadva 50/5046ms13336 KiB
#include <bits/stdc++.h>
using namespace std;
vector<array<int, 3>> g;
bool seen[100001];

int main() {
	int n,m,k,h;
	cin >> n >> m >> k >> h;
	for (int i=0;i<m;i++){
		int u,v,b;
		cin >> u >> v >> b;
		g.push_back({u,v,b});
	}
	vector<vector<int>> dp(n+1,vector<int>(h+1,0));
	dp[k][0]=1e9;
	for (int j=1;j<=h;j++){
		for (int i=1;i<=n;i++) dp[i][j]=dp[i][j-1];
        for (array<int, 3> edge:g){
            dp[edge[0]][j]=max(dp[edge[0]][j],min(dp[edge[1]][j-1],edge[2]));
            dp[edge[1]][j]=max(dp[edge[1]][j],min(dp[edge[0]][j-1],edge[2]));
		}
	}
	for (int i=1;i<=n;i++){
		if (i==k) cout<< 0 <<"\n";
		else{
		 if (dp[i][h]==0) cout<< -1 << "\n";
		 else cout << dp[i][h] << "\n";
		}
	}
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/03ms1820 KiB
2Elfogadva0/03ms2064 KiB
3Elfogadva1/13ms2248 KiB
4Elfogadva1/13ms2468 KiB
5Elfogadva2/23ms2684 KiB
6Elfogadva2/23ms2900 KiB
7Elfogadva2/23ms3140 KiB
8Elfogadva2/23ms3104 KiB
9Elfogadva1/14ms3356 KiB
10Elfogadva1/14ms3488 KiB
11Elfogadva1/18ms3540 KiB
12Elfogadva1/17ms3768 KiB
13Elfogadva2/26ms4004 KiB
14Elfogadva2/28ms4216 KiB
15Elfogadva2/213ms4372 KiB
16Elfogadva2/212ms4336 KiB
17Elfogadva2/213ms4628 KiB
18Elfogadva2/214ms4848 KiB
19Elfogadva2/213ms4656 KiB
20Elfogadva2/213ms4904 KiB
21Elfogadva1/124ms11956 KiB
22Elfogadva1/128ms11600 KiB
23Elfogadva1/132ms11528 KiB
24Elfogadva1/137ms11916 KiB
25Elfogadva2/243ms13332 KiB
26Elfogadva2/243ms13256 KiB
27Elfogadva2/246ms13336 KiB
28Elfogadva2/241ms12136 KiB
29Elfogadva2/245ms13292 KiB
30Elfogadva2/243ms13288 KiB
31Elfogadva2/243ms13320 KiB
32Elfogadva2/246ms13316 KiB