#include <bits/stdc++.h>
using namespace std;
int a[5005], ans[50086], ll[5008], rr[5008];
int dp[5005][5005];
char str[1005];
int main() {
  int t, n, k, m, i, j, d, ans = 0, len, coul, cour, l, r;
  scanf("%d", &n);
  scanf("%s", str + 1);
  for (i = 1; i <= n; i++)
    for (j = i; j <= n; j++) {
      dp[i][j] = 99999999;
    }
  for (i = 1; i <= n; i++) dp[i][i] = 1;
  for (len = 2; len <= n; len++) {
    for (l = 1; l + len - 1 <= n; l++) {
      r = l + len - 1;
      for (k = l; k < r; k++) {
        if (str[k] == str[r] || str[l] == str[k + 1] || str[l] == str[r] ||
            str[k] == str[k + 1]) {
          dp[l][r] = min(dp[l][k] + dp[k + 1][r] - 1, dp[l][r]);
        } else {
          dp[l][r] = min(dp[l][k] + dp[k + 1][r], dp[l][r]);
        }
      }
    }
  }
  printf("%d\n", dp[1][n]);
  return 0;
}
