#include #include using namespace std; using namespace atcoder; typedef long long ll; int main(){ int N, M; cin >> N >> M; string S, T; cin >> S; cin >> T; if(M%2==1){cout << -1 << endl;return 0;} for(int i=0;idp(M,INF); for(int i=0;i=M||S[i]!=T[i])break; dp[i] = 1; } for(int i=0;i=M||S[N-1-i]!=T[i])break; dp[i] = 1; } //貪欲に伸ばす int itr = -1; for(int i=M-1;i>=0;i--){ if(dp[i] == 1){ itr = i; break; } } if(itr == -1){ cout << -1 << endl; return 0; } //cout << itr << endl; while (true) { int c = dp[itr]; int nitr = -1; for(int i=0;itr+i+1