#include<bits/stdc++.h>
#define int long long
using namespace std;
int n,k;
int dp[257][257];
signed main(){
ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
for(int i='A';i<='Z';i++)
for(int j='A';j<='Z';j++)
dp[i][j]=-1;
cin>>n>>k;
for(int i=0;i<n;i++){
int x;
cin>>x;
char u = 'A' + i;
char v = 'A' + (i+1)%n;
dp[u][v] = x;
dp[v][u] = x;
}
while(k--){
char u,v;
int w;
cin>>u>>v>>w;
if(u==v)continue;
dp[u][v]=max(dp[u][v],w);
dp[v][u]=max(dp[v][u],w);
}
for(int i='A';i<='Z';i++){
for(int j='A';j<='Z';j++){
if(dp[i][j]==-1){
dp[i][j]=1e9;
}
}
dp[i][i]=0;
}
for(int k='A';k<='Z';k++){
for(int i='A';i<='Z';i++){
for(int j='A';j<='Z';j++){
dp[i][j]=min(dp[i][j],dp[i][k]+dp[k][j]);
}
}
}
char b,e;
cin>>b>>e;
cout<<dp[b][e];
return 0;
}