| # | Time | Username | Problem | Language | Result | Execution time | Memory | 
|---|---|---|---|---|---|---|---|
| 566617 | drdilyor | Lottery (CEOI18_lot) | C++17 | 0 ms | 0 KiB | 
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
int diff[2000][2000];
    memset(diff, 0, sizeof(diff));
    for (int i1 = 0; i1 <= n - l; i1++) {
        for (int i2 = i1+1; i2 <= n - l; i2++) {
            int d = 0;
            for (int j = 0; j < l; j++) {
                if (a[i1+j] != a[i2+j]) d++;
            }
            diff[i1][i2] = d;
        }
    }
    cin >> q;
    while (q--) {
        int k;
        cin >> k;
        vi res(n-l+1);
        for (int i1 = 0; i1 <= n - l; i1++) {
            for (int i2 = i1+1; i2 <= n -l; i2++) {
                if (diff[i1][i2] <= k) {
                    res[i1]++;
                    res[i2]++;
                }
            }
        }
        for (int i : res) {
            cout << i << ' ';
        }
        cout << '\n';
    }
