#include #include using namespace std; using Mint = atcoder::modint1000000007; int main() { int N; cin >> N; vector A(N); for (int &a : A) cin >> a; string s; cin >> s; vector lst(26); Mint pre = 1; for (int i = 0; i < N; i++) { Mint pp = pre; Mint ref = lst[s[i] - 'a']; pre = (A[i] + 1) * pp - A[i] * ref; lst[s[i] - 'a'] = A[i] * pp - (A[i] - 1) * ref; } cout << (pre - 1).val() << endl; }