#include <bits/stdc++.h>
using namespace std;
long long dp[501][501];
string s1;
long long solvedp(long long start, long long end) {
  if (start > end) {
    return 0;
  }
  if (start == end) {
    return 1;
  }
  if (dp[start][end] != -1) {
    return dp[start][end];
  }
  long long res = 1 + solvedp(start + 1, end);
  for (long long i = start + 1; i <= end; i++) {
    if (s1[start] == s1[i]) {
      res = min(res, solvedp(start + 1, i - 1) + solvedp(i, end));
    }
  }
  dp[start][end] = res;
  return res;
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  long long t;
  t = 1;
  memset(dp, -1, sizeof(dp));
  while (t--) {
    long long n;
    cin >> n;
    cin >> s1;
    memset(dp, -1, sizeof(dp));
    cout << solvedp(0, s1.size() - 1);
  }
  return 0;
}
