Submission #983498

# Submission time Handle Problem Language Result Execution time Memory
983498 2024-05-15T15:14:12 Z LOLOLO Lottery (CEOI18_lot) C++11
45 / 100
56 ms 65536 KB
#include <bits/stdc++.h>
#define ll long long
using namespace std;
 
#define           f     first
#define           s     second
#define           pb    push_back
#define           ep    emplace
#define           eb    emplace_back
#define           lb    lower_bound
#define           ub    upper_bound
#define       all(x)    x.begin(), x.end()
#define      rall(x)    x.rbegin(), x.rend()
#define   uniquev(v)    sort(all(v)), (v).resize(unique(all(v)) - (v).begin())
#define     mem(f,x)    memset(f , x , sizeof(f))
#define        sz(x)    (int)(x).size()
#define  __lcm(a, b)    (1ll * ((a) / __gcd((a), (b))) * (b))
#define          mxx    *max_element
#define          mnn    *min_element
#define    cntbit(x)    __builtin_popcountll(x)
#define       len(x)    (int)(x.length())
 
const int N = 1e4 + 10;
int a[N], f[N], id[N];
vector <int> add[N];
vector <int> lst[110];

int main() {
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);

    int n, l;
    cin >> n >> l;

    vector <int> cnt(n - l + 1, 0);

    for (int i = 1; i <= n; i++) {
        cin >> a[i];
    }

    for (int d = 1; d <= n; d++) {
        mem(f, 0);
        for (int i = n; i >= d + 1; i--) {
            f[i] = f[i + 1] + (a[i] != a[i - d]);
            if (i + l <= n + 1) {
                int cnt = f[i] - f[i + l];
                add[cnt].pb(i);
                add[cnt].pb(i - d);
            }
        }
    }

    vector <int> ask;

    int cc = 1;
    int q;
    cin >> q;

    for (int i = 0; i < q; i++) {
        int x;
        cin >> x;
        if (id[x] == 0) {
            id[x] = cc;
            cc++;
        }

        ask.pb(x);
    }

    for (int i = 0; i <= l; i++) {
        for (auto x : add[i]) {
            cnt[x - 1]++;
        }

        if (id[i])
            lst[id[i]] = cnt;
    }

    for (auto x : ask) {
        for (auto t : lst[id[x]])
            cout << t << " ";

        cout << '\n';
    }

    return 0;
}   
# Verdict Execution time Memory Grader output
1 Correct 0 ms 604 KB Output is correct
2 Correct 1 ms 760 KB Output is correct
3 Correct 1 ms 604 KB Output is correct
4 Correct 1 ms 604 KB Output is correct
5 Correct 1 ms 604 KB Output is correct
6 Correct 1 ms 604 KB Output is correct
7 Correct 1 ms 604 KB Output is correct
8 Correct 1 ms 860 KB Output is correct
9 Correct 2 ms 856 KB Output is correct
10 Correct 2 ms 1268 KB Output is correct
11 Correct 1 ms 1252 KB Output is correct
12 Correct 2 ms 1252 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 604 KB Output is correct
2 Correct 1 ms 760 KB Output is correct
3 Correct 1 ms 604 KB Output is correct
4 Correct 1 ms 604 KB Output is correct
5 Correct 1 ms 604 KB Output is correct
6 Correct 1 ms 604 KB Output is correct
7 Correct 1 ms 604 KB Output is correct
8 Correct 1 ms 860 KB Output is correct
9 Correct 2 ms 856 KB Output is correct
10 Correct 2 ms 1268 KB Output is correct
11 Correct 1 ms 1252 KB Output is correct
12 Correct 2 ms 1252 KB Output is correct
13 Correct 24 ms 24904 KB Output is correct
14 Correct 17 ms 11084 KB Output is correct
15 Correct 14 ms 10704 KB Output is correct
16 Correct 26 ms 19756 KB Output is correct
17 Correct 18 ms 17864 KB Output is correct
18 Correct 22 ms 18232 KB Output is correct
# Verdict Execution time Memory Grader output
1 Runtime error 56 ms 65536 KB Execution killed with signal 9
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Runtime error 56 ms 65536 KB Execution killed with signal 9
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 604 KB Output is correct
2 Correct 1 ms 760 KB Output is correct
3 Correct 1 ms 604 KB Output is correct
4 Correct 1 ms 604 KB Output is correct
5 Correct 1 ms 604 KB Output is correct
6 Correct 1 ms 604 KB Output is correct
7 Correct 1 ms 604 KB Output is correct
8 Correct 1 ms 860 KB Output is correct
9 Correct 2 ms 856 KB Output is correct
10 Correct 2 ms 1268 KB Output is correct
11 Correct 1 ms 1252 KB Output is correct
12 Correct 2 ms 1252 KB Output is correct
13 Correct 24 ms 24904 KB Output is correct
14 Correct 17 ms 11084 KB Output is correct
15 Correct 14 ms 10704 KB Output is correct
16 Correct 26 ms 19756 KB Output is correct
17 Correct 18 ms 17864 KB Output is correct
18 Correct 22 ms 18232 KB Output is correct
19 Runtime error 56 ms 65536 KB Execution killed with signal 9
20 Halted 0 ms 0 KB -