#include <bits/stdc++.h>
using namespace std;
const double PI = acos(-1.0);
const int maxn = 2000 + 500;
char s[maxn], t[maxn];
int n;
vector<int> ans;
void shift(int x) {
  if (x == 0) return;
  reverse(s + 1, s + n + 1);
  reverse(s + x + 1, s + n + 1);
  ans.push_back(x);
}
int main() {
  ios::sync_with_stdio(false);
  cin.tie();
  cout.tie();
  cin >> n;
  cin >> (s + 1) >> (t + 1);
  for (int i = 1; i <= n; i++) {
    int j = i;
    while (s[j] != t[n - i + 1]) j++;
    if (j > n) {
      cout << "-1" << endl;
      exit(0);
    }
    shift(n);
    shift(j - 1);
    shift(1);
  }
  cout << ans.size() << endl;
  for (int i = 0; i < ans.size() - 1; i++) cout << ans[i] << " ";
  cout << ans[ans.size() - 1] << endl;
  return 0;
}
