Submission #135690

# Submission time Handle Problem Language Result Execution time Memory
135690 2019-07-24T09:49:37 Z onjo0127 A Huge Tower (CEOI10_tower) C++11
100 / 100
190 ms 8284 KB
#include <bits/stdc++.h>
using namespace std;

const long long MOD = 1e9 + 9;
int A[1000009];

int main() {
	int N, D; scanf("%d%d",&N,&D);
	for(int i=1; i<=N; i++) scanf("%d",&A[i]);
	sort(A+1, A+N+1);
	long long ans = 1;
	for(int i=1; i<=N; i++) {
		ans *= i - (lower_bound(A+1, A+i, A[i] - D) - A - 1);
		ans %= MOD;
	}
	printf("%lld", ans);
	return 0;
}

Compilation message

tower.cpp: In function 'int main()':
tower.cpp:8:17: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  int N, D; scanf("%d%d",&N,&D);
            ~~~~~^~~~~~~~~~~~~~
tower.cpp:9:31: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  for(int i=1; i<=N; i++) scanf("%d",&A[i]);
                          ~~~~~^~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 380 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 4 ms 376 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 16 ms 504 KB Output is correct
2 Correct 15 ms 1024 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 78 ms 1276 KB Output is correct
2 Correct 71 ms 3788 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 150 ms 2672 KB Output is correct
2 Correct 190 ms 8284 KB Output is correct