Submission #1314707

#TimeUsernameProblemLanguageResultExecution timeMemory
1314707nhq0914A Huge Tower (CEOI10_tower)C++17
100 / 100
85 ms2616 KiB
#include <bits/stdc++.h>
using namespace std;

const int mod = 1e9 + 9;

int n, D, ans = 1;

int main(){
// 	freopen("data.txt", "r", stdin);

	ios_base::sync_with_stdio(false);
	cin.tie(nullptr);

	cin >> n >> D;

	vector<int>a(n);
	for(int &x: a) cin >> x;

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

	int l = 0, r = 0;
	for(; r < n; ++r){
		while(a[l] + D < a[r]) ++l;
		ans = 1ll * ans * (r - l + 1) % mod;
	}

	cout << ans;
	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...