Nu aveti permisiuni pentru a descarca fisierul grader_test13.ok
Cod sursa(job #637112)
Utilizator | Data | 20 noiembrie 2011 12:02:36 | |
---|---|---|---|
Problema | Zombie | Scor | 100 |
Compilator | cpp | Status | done |
Runda | .com 2011 | Marime | 0.69 kb |
#include <iostream>
#include <fstream>
#include <algorithm>
#include <cstdio>
#include <cstring>
#include <vector>
using namespace std;
#define maxn 1000010
int D, N, K;
int T[maxn], Din[maxn];
int main() {
fstream f1, f2;
f1.open("zombie.in", ios::in);
f2.open("zombie.out", ios::out);
int i, j, p, q;
f1 >> D >> N >> K;
for(i=1; i<=N; i++) {
f1 >> T[i];
}
int p1 = N, p2 = N;
for(i=N; i>=1; i--) {
int lim1 = T[i];
int lim2 = T[i] + D - 1;
int nrm = 0;
p1 = i;
while(T[p2] > lim2) p2 --;
Din[i] = min(1 + Din[i+1], K + Din[p2 + 1]);
}
f2 << Din[1];
f1.close(); f2.close();
return 0;
}