Submission #858205

# Submission time Handle Problem Language Result Execution time Memory
858205 2023-10-07T15:06:33 Z abeot A Huge Tower (CEOI10_tower) C++14
100 / 100
110 ms 8856 KB
// Source: https://usaco.guide/general/io

#include <bits/stdc++.h>
using namespace std;

const int MOD = 1e9 + 9;

int main() {
	ios::sync_with_stdio(0);
	cin.tie(0);
	int n; cin >> n;
	int d; cin >> d;
	int a[n];
	for (int i = 0; i < n; ++i) cin >> a[i];
	sort(a, a+n);
	int l = 0;
	long long ans = 1;
	for (int i = 1; i < n; ++i) {
		while (a[i] - a[l] > d) l++;
		int choices = i - l + 1;
		ans = ans * choices;
		ans %= MOD;
	}
	cout << ans << "\n";
}
# 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 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 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 512 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 600 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 472 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 980 KB Output is correct
2 Correct 7 ms 1020 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 42 ms 3836 KB Output is correct
2 Correct 37 ms 4048 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 79 ms 8856 KB Output is correct
2 Correct 110 ms 8320 KB Output is correct