#include <bits/stdc++.h>   using namespace std;   char s[2004], temp[2004], e[2004], c, cnt;   int n;   int q[27];   void f(int x) {     cnt++;     if (cnt != n * 3)       printf( %d  , x);     else       printf( %d n , x);     int i;     for (i = n - x + 1; i <= n; i++) temp[n - i + 1] = s[i];     for (i = 1; i < n - x + 1; i++) temp[i + x] = s[i];     for (i = 1; i <= n; i++) s[i] = temp[i];   }   int main() {     int t, i, j, k, x, l1, l2, flag, o;     scanf( %d , &t);     scanf( %s , s + 1);     scanf( %s , e + 1);     l1 = strlen(s + 1);     l2 = strlen(e + 1);     if (l1 != l2) {       printf( -1 n );       return 0;     }     memset(q, 0, sizeof(q));     for (i = 1; i <= l1; i++) {       q[s[i] -  a ]++;       q[e[i] -  a ]--;     }     flag = 1;     for (i = 0; i < 26; i++) {       if (q[i]) flag = 0;     }     if (flag == 0) {       printf( -1 n );       return 0;     }     n = l1;     printf( %d n , n * 3);     cnt = 0;     for (o = 0; o < n; o++) {       f(n);       c = e[n - o];       for (i = n - o; i >= 0; i--) {         if (s[i] == c) break;       }       f(n - i);       f(1);     }     return 0;   }   