#include<bits/stdc++.h>
using namespace std;
int e[1300][1300];
int mmap[1000005];
int P,C;
int F;
int cnt[100005];
int main(){
cin>>P>>F>>C;
for(int i=1;i<=F;i++){
cin>>mmap[i];
}
for(int i=1;i<=C;i++){
for(int j=1;j<=C;j++){
e[i][j]=0x3f;
}
e[i][i]=0;
}
for(int i=1;i<=C;i++){
int u,v,w;
cin>>u>>v>>w;
e[u][v]=w;
e[v][u]=w;
}
for(int k=1;k<=P;k++){
for(int i=1;i<=P;i++){
for(int j=1;j<=P;j++){
if(e[i][j]>e[i][k]+e[k][j]){
e[i][j]=e[i][k]+e[k][j];
}
}
}
}
for(int j=1;j<=P;j++){
for(int i=1;i<=F;i++){
cnt[j]+=e[j][mmap[i]];
}
}
double min_l=0x3fffffff;
int flag=0;
for(int i=1;i<=P;i++){
if(min_l>cnt[i]){
min_l=cnt[i];
flag=i;
}
}
cout<<flag;
return 0;
}