#include <bits/stdc++.h>
using namespace std;
int const MAX=1e6+5;
int n,d,m;
struct request{
int day,pos;
bool operator<(request ot){
return day<ot.day;
}
}req[MAX];
int capacity;
void read(){
cin>>n>>d>>m;
int i;
for(i=1;i<=m;++i){
cin>>req[i].day;
req[i].pos=i;
}
sort(req+1,req+m+1);
}
void maxself(int &x,int val){
if(x<val)
x=val;
}
int get_min_machines(){
int maxim=0;
int i;
for(i=1;i<=m;++i){
while(req[i].day==req[i+1].day)
++i;
maxself(maxim,(i+req[i].day+d-1)/(req[i].day+d));
}
capacity=maxim;
return maxim;
}
int main()
{
read();
cout<<get_min_machines();
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |