Cod sursa(job #636280)
| Utilizator | Data | 19 noiembrie 2011 18:16:24 | |
|---|---|---|---|
| Problema | Zombie | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | .com 2011 | Marime | 0.45 kb |
#include<fstream>
using namespace std;
ifstream in("zombie.in");
ofstream out("zombie.out");
int d,n,k,v[1000001],D[1000001],cost;
int main(){
int i,last;
in>>d>>n>>k;
last=-k+1;
if(k==1){
cost=n;
goto finish;
}
for(i=1;i<=n;++i){
in>>v[i];
if(v[i]-(last+k)<=d)
D[i]=1;
else
D[i]=k;
if(v[i]-d>last+k)
last=v[i];
}
for(i=1;i<=n;++i)
if(D[i]>D[i-1])
cost+=D[i];
finish:
out<<cost;
return 0;
}
