比赛 ?板子大赛 评测结果 AAATTTTTTT
题目名称 接竹竿 最终得分 30
用户昵称 赵飞羽 运行时间 7.731 s
代码语言 C++ 内存使用 3.63 MiB
提交时间 2026-01-17 12:58:24
显示代码纯文本
#include <bits/stdc++.h>
#define int long long
using namespace std;

const int N = 15010;
int T, n, a[N], q, l, r, ans, vis[N];

signed main() {
    freopen("bamboo.in", "r", stdin);
    freopen("bamboo.out", "w", stdout);
    ios::sync_with_stdio(0);
    cin.tie(0), cout.tie(0);
    cin >> T;
    while (T--) {
        cin >> n;
        for (int i = 1; i <= n; i++) cin >> a[i];
        cin >> q;
        while (q--) {
            memset(vis, 0, sizeof(vis));
            cin >> l >> r;
            ans = r - l + 1;
            for (int i = l; i <= r; i++) {
                if (l > r) break;
                for (int j = i; j >= l; j--) {
                    if (j != i && a[j] == a[i] && !vis[j]) {
                        for (int k = j; k <= i; k++) {
                            if (!vis[k]) {
                                vis[k] = 1;
                                ans--;
                            }
                        }
                        break;
                    }
                }
            }
            cout << ans << "\n";
        }
    }
    return 0;
}