Cod sursa(job #2223730)

Utilizator AndreiDeltaBalanici Andrei Daniel AndreiDelta Data 21 iulie 2018 12:46:51
Problema Zombie Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.54 kb
#include <bits/stdc++.h>
#define Dim 1000001
#define Max 1000000012
using namespace std;
ifstream f("zombie.in");
ofstream g("zombie.out");
long long D,N,K,T[Dim];
long long  Cost[Dim];

int main()
{
    f>>D>>N>>K;
    for(int i=1;i<=N;i++) f>>T[i],Cost[i]=Max;
    for(int i=1;i<=N;i++)
    {
        long long iter=i-1,busy=1;
        while(T[i]-T[iter]+1<=D&&iter>0)
            iter--,busy++;
        Cost[i]=min(Cost[i],K+Cost[iter]);
        Cost[i]=min(Cost[i],busy+Cost[iter]);
    }
    g<<Cost[N];
    return 0;
}