Submission #1160650

#TimeUsernameProblemLanguageResultExecution timeMemory
1160650ishat_jhaA Huge Tower (CEOI10_tower)C++20
30 / 100
65 ms5192 KiB
/*
*   author: denimflame12
*   created: 02.03.2025 23:06:43
*/
#include <bits/stdc++.h>
using namespace std;
#define int long long int
#define pb push_back
#define pob pop_back
#define sq(x) x * x
#define ff first
#define ss second

const int MOD = 1e9 + 7;

int MINT(int x){
    return (x % MOD);
}

void solvr() {
    int n, d;
    cin >> n >> d;
    vector<int> v(n);
    for(int i = 0; i < n; i++) {
        cin >> v[i];
    }
    sort(v.begin(), v.end());
    int ways = 1;
    int l = 0;
    for(int i = 0; i < n; i++) {
        while(v[i] - v[l] > d) {
            l++;
        }
        ways = MINT(MINT(ways) * MINT(i - l + 1));
    }
    cout << ways << endl;
}

int32_t main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    int tt = 1;
    while(tt--) {
        solvr();
    }
    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...