#include <bits/stdc++.h>
using namespace std;
char s[1000010];
char a[1000010], b[1000010];
int v[200] = {0};
int main() {
  int n;
  cin >> n >> s;
  for (int i = 0; i < n; i++) v[s[i]]++;
  int l = 1, r = n;
  for (int i = 1; i < 128; i++)
    if (v[i] & 1) a[l++] = i, v[i]--;
  for (int i = 1; i < 128; i++)
    if (v[i]) {
      while (v[i]--) a[r--] = i;
    }
  l--;
  int ans, len;
  for (ans = 1; ans <= n; ans++) {
    if (n % ans) continue;
    len = n / ans;
    if ((n - l) / 2 >= ans * (len / 2)) break;
  }
  cout << ans << endl;
  l = 1, r = n;
  for (int i = 1; i <= ans; i++) {
    int ll = len / 2, rr = len / 2 + 1;
    if (len & 1) b[rr++] = a[l++];
    for (int j = 1; j <= len / 2; j++) {
      b[ll--] = a[r--];
      b[rr++] = a[r--];
    }
    for (int j = 1; j <= len; j++) cout << b[j];
    cout << " ";
  }
}
