Submission #247840

#TimeUsernameProblemLanguageResultExecution timeMemory
247840thecodingwizardA Huge Tower (CEOI10_tower)C++11
100 / 100
426 ms9956 KiB
#include <bits/stdc++.h>

using namespace std;

const int mod = 1e9+9;

int main() {
    int n, d; cin >> n >> d;
    vector<int> v; for (int i = 0; i < n; i++) { int x; cin >> x; v.push_back(x); }
    sort(v.begin(), v.end());
    int lptr = 0;
    long long ways = 1;
    for (int rptr = 0; rptr < n; rptr++) {
        while (v[rptr]-v[lptr]>d) lptr++;
        ways = ways*(1+rptr-lptr)%mod;
    }
    cout << ways << endl;
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...