Pagini recente » Cod sursa (job #1035303) | Cod sursa (job #644747) | Cod sursa (job #1369962) | Cod sursa (job #2836181) | Cod sursa (job #638718)
Cod sursa(job #638718)
#include<stdio.h>
#define Nmax 1000003
#define INF 0x3f3f3f3f
int n,d,k,c=0;
int q[Nmax];
int main()
{
FILE*f = fopen("zombie.in","r");
fscanf(f,"%d%d%d",&d,&n,&k);
int i,x,ind=0,st=1;
q[1] = INF;
for(i=1;i<=n;++i)
{
fscanf(f,"%d",&x);
if(x-q[st]<=d-1)
q[++ind] = x;
else
{
if(ind-st+1>k)//daca sunt mai multi decat k pe d casute
{
c+=k;
st = ind;
}
else
{
while(x-q[st]>=d-1 && st<=ind)
{
++c;
++st;
}
q[++ind] = x;
}
}
}
if(ind-st+1>k)
c+=k;
else c+=(ind-st+1);
fclose(f);
FILE*g = fopen("zombie.out","w");
fprintf(g,"%d\n",c);
fclose(g);
return 0;
}