#include <bits/stdc++.h>
using namespace std;
string str;
int sz;
int pd[505][505];
int dp(int l, int r) {
  if (l > r) return 0;
  if (l == r) return 1;
  if (pd[l][r] != -1) return pd[l][r];
  int ans = 1 + dp(l + 1, r);
  for (int i = l + 1; i <= r; i++) {
    if (str[l] == str[i]) ans = min(ans, dp(l + 1, i - 1) + dp(i, r));
  }
  return pd[l][r] = ans;
}
int32_t main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  memset(pd, -1, sizeof pd);
  int n;
  cin >> n;
  cin >> str;
  str.resize(unique(str.begin(), str.end()) - str.begin());
  sz = (int)str.size();
  cout << dp(0, sz - 1) << '\n';
  return 0;
}
