Pagini recente » Cod sursa (job #553536) | Cod sursa (job #2454576) | Cod sursa (job #2201925) | Cod sursa (job #2614731) | Cod sursa (job #637933)
Cod sursa(job #637933)
#include <cstdio>
#include <fstream>
#define MAXN 1000010
using namespace std;
long long sol;
int D, N, K, A[MAXN], deq[MAXN];
inline int min(int a, int b) {
if(a < b) return a;
return b;
}
int main() {
// freopen("zombie.in", "r", stdin);
// freopen("zombie.out", "w", stdout);
ifstream fin("zombie.in");
ofstream fout("zombie.out");
fin >> D >> N >> K;
for(int i = 1; i <= N; i++)
fin >> A[i];
int p, u;
p = u = 0;
deq[p] = 1;
for(int i = 2; i <= N; i++) {
int s = 0;
while(A[i] - A[deq[p]] > D && p <= u)
++p, ++s;
deq[++u] = i;
sol += min(s, K);
}
sol += min((u - p + 1), K);
fout << sol << "\n";
return 0;
}