Submission #532728

# Submission time Handle Problem Language Result Execution time Memory
532728 2022-03-03T19:18:29 Z Cubik65536 A Huge Tower (CEOI10_tower) C++17
100 / 100
295 ms 8648 KB
#include <bits/stdc++.h>
using namespace std;

const int MOD = 1e9 + 9;

int main() {
    int n, d;
    cin >> n >> d;

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

    sort(blocks, blocks + n);

    int result = 1;
    for (int i = 0, j = 0; i < n; i++) {
        while (j < n - 1 && blocks[j + 1] - blocks[i] <= d) {
            j++;
        }
        int dist = j - i + 1;
        result = (result * 1LL * dist) % MOD;
    }

    cout << result << endl;

    return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 204 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 292 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 272 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 292 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 292 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 224 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 332 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 8 ms 440 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 27 ms 952 KB Output is correct
2 Correct 27 ms 960 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 129 ms 3656 KB Output is correct
2 Correct 133 ms 3660 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 295 ms 8648 KB Output is correct
2 Correct 273 ms 8056 KB Output is correct