Submission #1014860

# Submission time Handle Problem Language Result Execution time Memory
1014860 2024-07-05T15:58:54 Z coolbrother A Huge Tower (CEOI10_tower) C++17
100 / 100
199 ms 8852 KB
#include <iostream>
#include <vector>
#include <algorithm>
#include <climits>
#include <set>
#include <queue>
#include <tuple>

using namespace std;

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

    vector<int> blocks(n);
    for (int i = 0; i < n; i++) {
        cin >> blocks[i];
    }
    sort(blocks.begin(), blocks.end());

    long long ans = 1;
    const int MOD = 1000000009;

    int j = 0;

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

    cout << ans << endl;
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 600 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 3 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 15 ms 1112 KB Output is correct
2 Correct 15 ms 1116 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 78 ms 3668 KB Output is correct
2 Correct 75 ms 3664 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 189 ms 8852 KB Output is correct
2 Correct 199 ms 8084 KB Output is correct