#include<bits/stdc++.h>
using namespace std;
const int N=1e4+10;
const int NN=1e3+10;
struct node{
int x,y,z;
}a[N];
int f[NN];
bool cmp(node a,node b){
return a.z<b.z;
}
int find(int x){
if(f[x]==x){
return x;
}
else{
return f[x]==find(f[x]);
}
}
int main(){
int n,m,k,ans=0;
cin>>n>>m>>k;
for(int i=1;i<=m;i++){
int x,y,l;
cin>>x>>y>>l;
a[i].x=x;
a[i].y=y;
a[i].z=l;
}
sort(a+1,a+1+m,cmp);
for(int i=1;i<=n;i++)f[i]=i;
for(int i=1;i<=m;i++){
int x=find(a[i].x);
int y=find(a[i].y);
if(x==y)continue;
f[x]=y;
ans+=a[i].z;
n--;
if(n==k){
cout<<ans;
return 0;
}
}
if(n!=k)cout<<"No Answer";
return 0;
}