#include <bits/stdc++.h>
using namespace std;
const int MAXN = 7510;
int main() {
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
int n;
cin >> n;
vector<long long> a(n + 1);
vector<long long> b(n + 1);
vector<long long> r(n + 1, 0);
for (int i = 1; i <= n; ++i) {
cin >> a[i];
}
for (int i = 1; i <= n; ++i) {
cin >> b[i];
}
for (int l = 1; l <= n; ++l) {
vector<long long> c = a;
long long m = 0;
for (int i = 1; i <= n; ++i) {
if (c[i] == b[i]) m++;
}
for (int t = l; t <= n; ++t) {
for (int i = l; i <= (l + t) / 2; ++i) {
swap(c[i], c[l + t - i]);
}
long long mm = 0;
for (int i = 1; i <= n; ++i) {
if (c[i] == b[i]) mm++;
}
r[mm]++;
for (int i = l; i <= (l + t) / 2; ++i) {
swap(c[i], c[l + t - i]);
}
}
}
for (int i = 0; i <= n; ++i) {
cout << r[i] << "\n";
}
return 0;
}
不明白了呀,样例都对,前6个测试点也过了,为什么7--13个就显示Time Limit Exceeded?(蒟蒻求助),有大佬帮忙改改吗?(已S)