#include <bits/stdc++.h>
#define Hoshimachi signed
#define Suisei main
using namespace std;
#define int long long
#define pii pair<int,int>
#define tup tuple<int,int,int>
const int N=1e3+5;
int n,m,k;
vector<pii> adj[N];
int dp[(1<<10)+5][N];
void steiner(){
memset(dp,0x3f,sizeof(dp));
for(int i=0; i<k; i++){
dp[(1<<i)][i]=0;
}
for(int mask=1; mask<(1<<k); mask++){
for(int sub=mask; sub>0; sub=(sub-1)&mask){
for(int i=0; i<n; i++){
dp[mask][i]=min(dp[mask][i],dp[sub][i]+dp[mask^sub][i]);
}
}
priority_queue<pii,vector<pii>,greater<pii>> q;
for(int i=0; i<n; i++){
q.push({dp[mask][i],i});
}
while(!q.empty()){
auto [d,u]=q.top();
q.pop();
if(dp[mask][u]!=d) continue;
for(auto [v,w]:adj[u]){
int nd=d+w;
if(dp[mask][v]>nd){
dp[mask][v]=nd;
q.push({nd,v});
}
}
}
}
int fm=0;
for(int i=0; i<k; i++){
fm|=(1<<i);
}
for(int i=k; i<n; i++){
cout<<dp[fm][i]<<'\n';
}
}
bool ok[N];
tup e[N];
inline bool getbit(int n, int k){
return (n>>k)&1;
}
struct Dsu{
vector<int> sz,par;
int sl;
void init(int n){
sl=n;
sz.resize(n+1,1);
par.resize(n+1,0);
for(int i=0; i<n; i++){
par[i]=i;
sz[i]=1;
}
}
int find(int x){
return (x==par[x]?x:(par[x]=find(par[x])));
}
bool unite(int u,int v){
u=find(u);
v=find(v);
if(u==v) return 0;
sl--;
if(sz[u]<sz[v]) swap(u,v);
sz[u]+=sz[v];
par[v]=u;
return 1;
}
};
Dsu dsu;
void krus(){
vector<tup> all;
for(int i=1; i<=m; i++){
auto [u,v,w]=e[i];
all.push_back({w,u,v});
}
sort(all.begin(),all.end());
for(int i=0; i<k; i++) ok[i]=1;
for(int st=k; st<n; st++){
int kq=1e18;
for(int mask=0; mask<(1<<n-k); mask++){
if(!getbit(mask,st-k)) continue;
for(int j=k; j<n; j++){
if(getbit(mask,j-k)) ok[j]=1;
else ok[j]=0;
}
dsu.init(n);
dsu.sl=k+__builtin_popcountll(mask);
vector<tup> edge;
for(auto [w,u,v]:all){
if(!ok[u] or !ok[v]) continue;
edge.push_back({w,u,v});
}
int ans=0;
for(auto [w,u,v]:edge){
if(dsu.unite(u,v)) ans+=w;
}
if(dsu.sl==1) kq=min(kq,ans);
}
cout<<kq<<'\n';
}
}
Hoshimachi Suisei(){
ios_base::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
// freopen(".inp", "r", stdin);
// freopen(".out", "w", stdout);
cin>>n>>m>>k;
k--;
for(int i=1; i<=m; i++){
int u,v,w;
cin>>u>>v>>w;
u--,v--;
e[i]={u,v,w};
adj[u].push_back({v,w});
adj[v].push_back({u,w});
}
if(k<=10){
steiner();
}
else{
krus();
}
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgSG9zaGltYWNoaSBzaWduZWQKI2RlZmluZSBTdWlzZWkgbWFpbgp1c2luZyBuYW1lc3BhY2Ugc3RkOwojZGVmaW5lIGludCBsb25nIGxvbmcKI2RlZmluZSBwaWkgcGFpcjxpbnQsaW50PgojZGVmaW5lIHR1cCB0dXBsZTxpbnQsaW50LGludD4KY29uc3QgaW50IE49MWUzKzU7CmludCBuLG0sazsKdmVjdG9yPHBpaT4gYWRqW05dOwppbnQgZHBbKDE8PDEwKSs1XVtOXTsKdm9pZCBzdGVpbmVyKCl7CiAgICBtZW1zZXQoZHAsMHgzZixzaXplb2YoZHApKTsKICAgIGZvcihpbnQgaT0wOyBpPGs7IGkrKyl7CiAgICAgICAgZHBbKDE8PGkpXVtpXT0wOwogICAgfQogICAgZm9yKGludCBtYXNrPTE7IG1hc2s8KDE8PGspOyBtYXNrKyspewogICAgICAgIGZvcihpbnQgc3ViPW1hc2s7IHN1Yj4wOyBzdWI9KHN1Yi0xKSZtYXNrKXsKICAgICAgICAgICAgZm9yKGludCBpPTA7IGk8bjsgaSsrKXsKICAgICAgICAgICAgICAgIGRwW21hc2tdW2ldPW1pbihkcFttYXNrXVtpXSxkcFtzdWJdW2ldK2RwW21hc2tec3ViXVtpXSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcHJpb3JpdHlfcXVldWU8cGlpLHZlY3RvcjxwaWk+LGdyZWF0ZXI8cGlpPj4gcTsKICAgICAgICBmb3IoaW50IGk9MDsgaTxuOyBpKyspewogICAgICAgICAgICBxLnB1c2goe2RwW21hc2tdW2ldLGl9KTsKICAgICAgICB9CiAgICAgICAgd2hpbGUoIXEuZW1wdHkoKSl7CiAgICAgICAgICAgIGF1dG8gW2QsdV09cS50b3AoKTsKICAgICAgICAgICAgcS5wb3AoKTsKICAgICAgICAgICAgaWYoZHBbbWFza11bdV0hPWQpIGNvbnRpbnVlOwogICAgICAgICAgICBmb3IoYXV0byBbdix3XTphZGpbdV0pewogICAgICAgICAgICAgICAgaW50IG5kPWQrdzsKICAgICAgICAgICAgICAgIGlmKGRwW21hc2tdW3ZdPm5kKXsKICAgICAgICAgICAgICAgICAgICBkcFttYXNrXVt2XT1uZDsKICAgICAgICAgICAgICAgICAgICBxLnB1c2goe25kLHZ9KTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KICAgIGludCBmbT0wOwogICAgZm9yKGludCBpPTA7IGk8azsgaSsrKXsKICAgICAgICBmbXw9KDE8PGkpOwogICAgfQogICAgZm9yKGludCBpPWs7IGk8bjsgaSsrKXsKICAgICAgICBjb3V0PDxkcFtmbV1baV08PCdcbic7CiAgICB9Cn0KYm9vbCBva1tOXTsKdHVwIGVbTl07CmlubGluZSBib29sIGdldGJpdChpbnQgbiwgaW50IGspewogICAgcmV0dXJuIChuPj5rKSYxOwp9CnN0cnVjdCBEc3V7CiAgICB2ZWN0b3I8aW50PiBzeixwYXI7CiAgICBpbnQgc2w7CiAgICB2b2lkIGluaXQoaW50IG4pewogICAgICAgIHNsPW47CiAgICAgICAgc3oucmVzaXplKG4rMSwxKTsKICAgICAgICBwYXIucmVzaXplKG4rMSwwKTsKICAgICAgICBmb3IoaW50IGk9MDsgaTxuOyBpKyspewogICAgICAgICAgICBwYXJbaV09aTsKICAgICAgICAgICAgc3pbaV09MTsKICAgICAgICB9CiAgICB9CiAgICBpbnQgZmluZChpbnQgeCl7CiAgICAgICAgcmV0dXJuICh4PT1wYXJbeF0/eDoocGFyW3hdPWZpbmQocGFyW3hdKSkpOwogICAgfQogICAgYm9vbCB1bml0ZShpbnQgdSxpbnQgdil7CiAgICAgICAgdT1maW5kKHUpOwogICAgICAgIHY9ZmluZCh2KTsKICAgICAgICBpZih1PT12KSByZXR1cm4gMDsKICAgICAgICBzbC0tOwogICAgICAgIGlmKHN6W3VdPHN6W3ZdKSBzd2FwKHUsdik7CiAgICAgICAgc3pbdV0rPXN6W3ZdOwogICAgICAgIHBhclt2XT11OwogICAgICAgIHJldHVybiAxOwogICAgfQp9OwpEc3UgZHN1Owp2b2lkIGtydXMoKXsKICAgIHZlY3Rvcjx0dXA+IGFsbDsKICAgIGZvcihpbnQgaT0xOyBpPD1tOyBpKyspewogICAgICAgIGF1dG8gW3Usdix3XT1lW2ldOwogICAgICAgIGFsbC5wdXNoX2JhY2soe3csdSx2fSk7CiAgICB9CiAgICBzb3J0KGFsbC5iZWdpbigpLGFsbC5lbmQoKSk7CiAgICBmb3IoaW50IGk9MDsgaTxrOyBpKyspIG9rW2ldPTE7CiAgICBmb3IoaW50IHN0PWs7IHN0PG47IHN0KyspewogICAgICAgIGludCBrcT0xZTE4OwogICAgICAgIGZvcihpbnQgbWFzaz0wOyBtYXNrPCgxPDxuLWspOyBtYXNrKyspewogICAgICAgICAgICBpZighZ2V0Yml0KG1hc2ssc3QtaykpIGNvbnRpbnVlOwogICAgICAgICAgICBmb3IoaW50IGo9azsgajxuOyBqKyspewogICAgICAgICAgICAgICAgaWYoZ2V0Yml0KG1hc2ssai1rKSkgb2tbal09MTsKICAgICAgICAgICAgICAgIGVsc2Ugb2tbal09MDsKICAgICAgICAgICAgfQogICAgICAgICAgICBkc3UuaW5pdChuKTsKICAgICAgICAgICAgZHN1LnNsPWsrX19idWlsdGluX3BvcGNvdW50bGwobWFzayk7CiAgICAgICAgICAgIHZlY3Rvcjx0dXA+IGVkZ2U7CiAgICAgICAgICAgIGZvcihhdXRvIFt3LHUsdl06YWxsKXsKICAgICAgICAgICAgICAgIGlmKCFva1t1XSBvciAhb2tbdl0pIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgZWRnZS5wdXNoX2JhY2soe3csdSx2fSk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaW50IGFucz0wOwogICAgICAgICAgICBmb3IoYXV0byBbdyx1LHZdOmVkZ2UpewogICAgICAgICAgICAgICAgaWYoZHN1LnVuaXRlKHUsdikpIGFucys9dzsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZihkc3Uuc2w9PTEpIGtxPW1pbihrcSxhbnMpOwogICAgICAgIH0KICAgICAgICBjb3V0PDxrcTw8J1xuJzsKICAgIH0KfQpIb3NoaW1hY2hpIFN1aXNlaSgpewogICAgaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbygwKTsKICAgIGNpbi50aWUoMCk7IGNvdXQudGllKDApOwogICAgLy8gZnJlb3BlbigiLmlucCIsICJyIiwgc3RkaW4pOwogICAgLy8gZnJlb3BlbigiLm91dCIsICJ3Iiwgc3Rkb3V0KTsKICAgIGNpbj4+bj4+bT4+azsKICAgIGstLTsKICAgIGZvcihpbnQgaT0xOyBpPD1tOyBpKyspewogICAgICAgIGludCB1LHYsdzsKICAgICAgICBjaW4+PnU+PnY+Pnc7CiAgICAgICAgdS0tLHYtLTsKICAgICAgICBlW2ldPXt1LHYsd307CiAgICAgICAgYWRqW3VdLnB1c2hfYmFjayh7dix3fSk7CiAgICAgICAgYWRqW3ZdLnB1c2hfYmFjayh7dSx3fSk7CiAgICB9CiAgICBpZihrPD0xMCl7CiAgICAgICAgc3RlaW5lcigpOwogICAgfQogICAgZWxzZXsKICAgICAgICBrcnVzKCk7CiAgICB9Cn0=