Submission #935254

# Submission time Handle Problem Language Result Execution time Memory
935254 2024-02-29T01:28:24 Z GloriousSpacePotato A Huge Tower (CEOI10_tower) C++17
100 / 100
94 ms 15280 KB
#include <bits/stdc++.h>

#define MOD ((ll) 1e9 + 9)

using namespace std;
using ll = long long;

vector<ll> blocks;

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

  ll n, d;
  cin >> n >> d;
  for (ll i{0}; i < n; i++) {
    ll b;
    cin >> b;
    blocks.push_back(b);
  }
  sort(blocks.begin(), blocks.end());

  ll ans{1};
  ll right{0};
  for (ll left{0}; left < n; left++) {
    while (right < n && blocks[left] + d >= blocks[right]) {
      right++;
    }
    ans *= (right - left) % MOD;
    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 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 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 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 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 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 2 ms 608 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 8 ms 992 KB Output is correct
2 Correct 8 ms 1540 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 38 ms 2476 KB Output is correct
2 Correct 37 ms 4952 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 78 ms 9908 KB Output is correct
2 Correct 94 ms 15280 KB Output is correct