#include <bits/stdc++.h>
using namespace std;
long long cnt[300];
int main() {
  ios_base::sync_with_stdio(false);
  long long n;
  cin >> n;
  string s;
  cin >> s;
  long long even = 0;
  for (char c : s) {
    long long num = c - '0';
    cnt[num]++;
  }
  for (long long i = 0; i <= 80; i++) {
    even += (cnt[i] / 2);
  }
  vector<long long> d;
  for (long long i = n; i > 0; i--) {
    if (n % i == 0) {
      d.push_back(i);
    }
  }
  for (long long sz : d) {
    long long item = n / sz;
    long long half = sz / 2;
    if (even >= half * item) {
      cout << item << "\n";
      vector<string> res;
      for (long long i = 0; i < item; i++) {
        string ans;
        for (long long j = 0; j < half; j++) {
          for (long long k = 0; k <= 80; k++) {
            if (cnt[k] >= 2) {
              cnt[k] -= 2;
              char c = k + '0';
              ans += c;
              break;
            }
          }
        }
        res.push_back(ans);
      }
      for (string ans : res) {
        char c;
        if (sz & 1) {
          for (long long j = 0; j <= 80; j++) {
            if (cnt[j] >= 1) {
              cnt[j]--;
              c = j + '0';
              break;
            }
          }
        }
        cout << ans;
        if (sz & 1) cout << c;
        reverse(ans.begin(), ans.end());
        cout << ans << " ";
      }
      cout << "\n";
      return 0;
    }
  }
}
