Submission #884333

# Submission time Handle Problem Language Result Execution time Memory
884333 2023-12-07T07:07:23 Z AndreiBOTO A Huge Tower (CEOI10_tower) C++14
100 / 100
235 ms 18012 KB
#include <iostream>
#include <vector>
#include <bits/stdc++.h>

using namespace std;

const int NMAX=1e6+5;
const int MOD=1e9+9;
#define int long long

vector<int>v;
int best[NMAX];

signed main()
{
    int n,d,i,j;
    long long ans=1;
    cin>>n>>d;
    for(i=0;i<n;i++)
    {
        int x;
        cin>>x;
        v.push_back(x);
    }
    sort(v.begin(),v.end());
    for(i=0;i<n;i++)
        best[i]=upper_bound(v.begin(),v.end(),v[i]+d)-v.begin();
    for(i=0;i<n;i++)
    {
        ans*=(1LL*best[i]-i);
        ans%=MOD;
    }
    cout<<ans;
    return 0;
}

Compilation message

tower.cpp: In function 'int main()':
tower.cpp:16:15: warning: unused variable 'j' [-Wunused-variable]
   16 |     int n,d,i,j;
      |               ^
# 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 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 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 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 1 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 6 ms 604 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 24 ms 3024 KB Output is correct
2 Correct 21 ms 3468 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 100 ms 4568 KB Output is correct
2 Correct 90 ms 7008 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 211 ms 13504 KB Output is correct
2 Correct 235 ms 18012 KB Output is correct