#include <bits/stdc++.h>
using namespace std;
long long gcd(long long a, long long b) {
  if (b == 0) return a;
  return gcd(b, a % b);
}
int main() {
  long long n;
  cin >> n;
  long long i;
  long long a[n];
  string s;
  cin >> s;
  for (i = 0; i < n; i++) {
    a[i] = s[i] - '0';
  }
  long long f[10];
  f[0] = 0;
  for (i = 1; i <= 9; i++) {
    cin >> f[i];
  }
  i = 0;
  while (i < n) {
    if (a[i] < f[a[i]]) {
      long long j = i;
      while (j < n && a[j] <= f[a[j]]) {
        a[j] = f[a[j]];
        j++;
      }
      break;
    }
    i++;
  }
  for (i = 0; i < n; i++) {
    cout << a[i];
  }
  return 0;
}
