#include #include using namespace std; using Modint = atcoder::modint1000000007; int main(){ int N; cin >> N; vector A(N); for(int& a : A) cin >> a; vector dp(26); Modint sum = 0; for(int i = 0; i < N; i++){ const Modint x = Modint::raw(A[i]); char c; cin >> c; c -= 'a'; const Modint diff = (sum - dp[c] + 1) * x; dp[c] += diff; sum += diff; } cout << sum.val() << endl; }