Submission #761062

# Submission time Handle Problem Language Result Execution time Memory
761062 2023-06-19T07:11:41 Z lukehsiao A Huge Tower (CEOI10_tower) C++14
100 / 100
96 ms 8764 KB
#include <bits/stdc++.h>
using namespace std;
using ll = long long;

const int MOD = 1000000009;

int n, D;

int main() {
	ios_base::sync_with_stdio(0);
	cin.tie(0);

	cin >> n >> D;
	vector<int> sz(n);
	for (int &x : sz)
		cin >> x;
	
	sort(sz.begin(), sz.end());

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

	cout << ans << '\n';
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 320 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 320 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 340 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 460 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 9 ms 892 KB Output is correct
2 Correct 8 ms 980 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 40 ms 3648 KB Output is correct
2 Correct 36 ms 3728 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 82 ms 8764 KB Output is correct
2 Correct 96 ms 8104 KB Output is correct