#include<bits/stdc++.h>
using namespace std;
const int maxn = 1005,maxm = 10005;
int f[maxn];
struct way{
int left,right;
int size;
void input(){
cin>>left>>right>>size;
}
}road[maxm];
bool pd(way x,way y){
return x.size<y.size;
}
int find(int x){return f[x] == x ? x:f[x] = find(f[x]);}
int main(){
int n,m,k,cnt = 0,sum = 0;
cin>>n>>m>>k;
for(int i = 1;i<=m;i++){
road[i].input();
}
sort(road,road+m+1,pd);
for(int i = 1;i<=m;i++){
if(find(road[i].left)!=find(road[i].right)){
f[road[i].left] = f[road[i].right];
sum+=road[i].size;
cnt++;
}
}
if(cnt!=n-k){
cout<<"No Answer";
}else{
cout<<sum;
}
return 0;
}