Cod sursa(job #635638)

Utilizator ChallengeMurtaza Alexandru Challenge Data 19 noiembrie 2011 13:45:09
Problema Zombie Scor 0
Compilator cpp Status done
Runda .com 2011 Marime 0.64 kb
#include <fstream>

using namespace std;

const char InFile[]="zombie.in";
const char OutFile[]="zombie.out";
const int MaxN=1000111;

ifstream fin(InFile);
ofstream fout(OutFile);

int D,N,K,x,sol,V[MaxN],st=0,sf=-1;

int main()
{
	fin>>D>>N>>K;
	--D;
	for(register int i=0;i<N;++i)
	{
		fin>>x;
		if(st<=sf)
		{
			if(x-V[st]>=D)
			{
				if(st-sf+1>K)
				{
					st=sf+1;
					sol+=K;
				}
				else
				{
					++sol;
					++st;
				}
			}
		}
		V[++sf]=x;
	}
	fin.close();
	if(st<=sf)
	{
		if(sf-st+1>K)
		{
			sol+=K;
		}
		else
		{
			sol+=sf-st+1;
		}
	}

	fout<<sol;
	fout.close();
	return 0;
}