Submission #346565

#TimeUsernameProblemLanguageResultExecution timeMemory
346565Ca7Ac1A Huge Tower (CEOI10_tower)C++17
30 / 100
115 ms10092 KiB
#include <iostream> #include <algorithm> #include <vector> #include <set> #include <map> #define ll signed long long using namespace std; const ll MOD = (ll)10e9 + 9; bool cmpr(ll a, ll b) { return a > b; } int main() { cin.tie(0); cout.tie(0); ios_base::sync_with_stdio(0); //freopen("tower.in", "r", stdin); ll N; ll D; cin >> N >> D; vector<ll> blocks(N, 0); for (ll i = 0; i < N; i++) { cin >> blocks[i]; } sort(blocks.begin(), blocks.end()); vector<ll> possible(N + 1, 1); ll j = 0; for (ll i = 0; i < N; i++) { while (j < N - 1 && blocks[j + 1] - blocks[i] <= D) { j++; } possible[i + 1] = possible[i] * ((j - i + 1) % MOD); possible[i + 1] %= MOD; } // ll sol = possible[0]; // for (ll i = 1; i < N; i++) // { // if (blocks[i - 1] - blocks[i] <= D) // { // if (possible[i] != 1) // { // sol += possible[i]; // } // } // else // { // sol *= possible[i]; // } // sol %= MOD; // } cout << possible[N]; }
#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...