Submission #954445

# Submission time Handle Problem Language Result Execution time Memory
954445 2024-03-27T23:30:33 Z thiago_bastos A Huge Tower (CEOI10_tower) C++17
100 / 100
97 ms 9004 KB
#include <bits/stdc++.h>

using namespace std;

const int MOD = 1e9 + 9;

void solve() {
    int n, d;

    cin >> n >> d;

    vector<int> a(n);
    int answer = 1, lo = 0;

    for(int& v : a) cin >> v;

    sort(a.begin(), a.end());

    for(int i = 0; i < n; ++i) {
        while(a[lo] < a[i] - d) ++lo;
        answer = (i - lo + 1ll) * answer % MOD;
    }

    cout << answer << '\n';
}

int main() {
    int t = 1;
    ios_base :: sync_with_stdio(false);
    cin.tie(0);
    //cin >> t;
    while(t--) solve();
    return 0;
}
# 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 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 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 0 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 604 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 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 1 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 7 ms 1116 KB Output is correct
2 Correct 8 ms 1116 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 42 ms 3792 KB Output is correct
2 Correct 41 ms 3668 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 86 ms 9004 KB Output is correct
2 Correct 97 ms 8108 KB Output is correct