Submission #973293

# Submission time Handle Problem Language Result Execution time Memory
973293 2024-05-01T17:41:46 Z jadai007 A Huge Tower (CEOI10_tower) C++17
100 / 100
107 ms 10744 KB
#include<bits/stdc++.h>
#define int long long

using namespace std;

const int mod = 1e9 + 9;
int n, d, ans = 1;
vector<int> vc, dp;

int32_t main(){
    cin.tie(nullptr)->sync_with_stdio(false);
    cin >> n >> d; int arr[n];
    for (int i = 0; i < n; i++) cin >> arr[i];
    sort(arr, arr+n);
    for (int i = 1; i < n; i++){
        int l = 0, r = i;
        while (l < r){
            int mid = (l+r)/2;
            if (arr[mid]+d >= arr[i]) r = mid;
            else l = mid+1;
        }
        int cnt = i-l;
        ans = ((ans%mod)*((cnt+1)%mod))%mod;
    }
    cout << ans;
}
# 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 1 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 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 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 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 1 ms 344 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 8 ms 604 KB Output is correct
2 Correct 9 ms 1116 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 42 ms 2392 KB Output is correct
2 Correct 46 ms 4956 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 83 ms 5284 KB Output is correct
2 Correct 107 ms 10744 KB Output is correct