#include <bits/stdc++.h>
using namespace std;
int solve(const string& s, int start, int end) {
  if (start > end) return 0;
  static map<pair<int, int>, int> mem;
  auto key = make_pair(start, end);
  auto it = mem.lower_bound(key);
  if (it != mem.end() && it->first == key) return it->second;
  int res = 1 + solve(s, start + 1, end);
  char c = s[start];
  for (int i = start + 1; i <= end; ++i) {
    if (s[i] == c) {
      res = min(res, solve(s, start + 1, i - 1) + solve(s, i, end));
    }
  }
  mem.emplace_hint(it, key, res);
  return res;
}
int main() {
  ios::sync_with_stdio(false);
  cin.tie(nullptr);
  cout.tie(nullptr);
  int n;
  cin >> n;
  cin.ignore();
  string s;
  cin >> s;
  cin.ignore();
  s.resize(unique(s.begin(), s.end()) - s.begin());
  cout << solve(s, 0, (int)s.size() - 1) << endl;
  return 0;
}
