Pagini recente » Cod sursa (job #2570062) | Cod sursa (job #230270) | Cod sursa (job #433156) | Cod sursa (job #3252188) | Cod sursa (job #635337)
Cod sursa(job #635337)
#include <stdio.h>
#define MAXIM 10005
int pozitie=MAXIM-1;
char buff[MAXIM];//citesc bucati de cate maxim 10005 caractere
void cit(int &nr){
nr=0;
while(buff[pozitie]<'0' || buff[pozitie]>'9')//cat timp nu e cifra, treci mai departe
if (++pozitie==MAXIM){
fread (buff,1,MAXIM,stdin);
pozitie=0;
}
while('0'<=buff[pozitie] && buff[pozitie]<='9'){//cat timp e cifra
nr=nr*10+buff[pozitie]-'0';
if (++pozitie==MAXIM){
fread (buff,1,MAXIM,stdin);
pozitie=0;
}
}
}
int main(){
int n,k,d;
int i;
freopen("zombie.in","r",stdin);
freopen("zombie.out","w",stdout);
cit(d);
cit(n);
cit(k);
//fscanf(fin,"%d%d%d",&d,&n,&k);
int t1,tc,x;
long long chakra=0;
//fscanf(fin,"%d",&t1);
cit(t1);
x=1;
for(i=1;i<n;i++){
// fscanf(fin,"%d",&tc);
cit(tc);
if(tc-t1>=d){//asta e intervalul
//la chakra adaug minimuldintre x si k
if(x<k)chakra+=x;
else chakra+=k;
t1=tc;
x=1;
}else{
x++;
}
}
//la chakra adaug minimuldintre x si k
if(x<k)chakra+=x;
else chakra+=k;
printf("%lld\n",chakra);
return 0;
}