USACO Au组第3题为何T(违规紫衫)
  • 板块学术版
  • 楼主Yand_JiaYi
  • 当前回复0
  • 已保存回复0
  • 发布时间2025/1/27 13:45
  • 上次更新2025/1/27 18:09:06
查看原帖
USACO Au组第3题为何T(违规紫衫)
1034229
Yand_JiaYi楼主2025/1/27 13:45
#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)

2025/1/27 13:45
加载中...