/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
static int compute_refills(int dist,int tank,int stops[],int n){
int current_refills=0;
int num_refills=0;
int last_refill=0;
while(current_refills<=n) {
last_refill = current_refills;
while ((current_refills <= n) && (stops[current_refills + 1] - stops[last_refill]) <= tank) {
current_refills = current_refills + 1;
}
if (current_refills == last_refill)
return -1;
if (current_refills <= n)
num_refills = num_refills + 1;
}
return num_refills;
}
public static void main
(String[] args
) { Scanner scanner
= new Scanner
(System.
in); int dist = scanner.nextInt();
int tank = scanner.nextInt();
int n = scanner.nextInt();
int stops[] = new int[n+2];
stops[0] = 0;
stops[n+1] = dist;
for (int i = 1; i <= n; i++) {
stops[i] = scanner.nextInt();
}
System.
out.
println(compute_refills
(dist,tank,stops,n
)); }
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKICAgIHN0YXRpYyBpbnQgY29tcHV0ZV9yZWZpbGxzKGludCBkaXN0LGludCB0YW5rLGludCBzdG9wc1tdLGludCBuKXsKICAgICAgICBpbnQgY3VycmVudF9yZWZpbGxzPTA7CiAgICAgICAgaW50IG51bV9yZWZpbGxzPTA7CiAgICAgICAgaW50IGxhc3RfcmVmaWxsPTA7CiAgICAgICAgd2hpbGUoY3VycmVudF9yZWZpbGxzPD1uKSB7CiAgICAgICAgICAgIGxhc3RfcmVmaWxsID0gY3VycmVudF9yZWZpbGxzOwogICAgICAgICAgICB3aGlsZSAoKGN1cnJlbnRfcmVmaWxscyA8PSBuKSAmJiAoc3RvcHNbY3VycmVudF9yZWZpbGxzICsgMV0gLSBzdG9wc1tsYXN0X3JlZmlsbF0pIDw9IHRhbmspIHsKICAgICAgICAgICAgICAgIGN1cnJlbnRfcmVmaWxscyA9IGN1cnJlbnRfcmVmaWxscyArIDE7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIGlmIChjdXJyZW50X3JlZmlsbHMgPT0gbGFzdF9yZWZpbGwpCiAgICAgICAgICAgICAgICByZXR1cm4gLTE7CiAgICAgICAgICAgIGlmIChjdXJyZW50X3JlZmlsbHMgPD0gbikKICAgICAgICAgICAgICAgIG51bV9yZWZpbGxzID0gbnVtX3JlZmlsbHMgKyAxOwogICAgICAgIH0KICAgICAgICByZXR1cm4gbnVtX3JlZmlsbHM7CiAgICB9CiAgICAKICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHsKICAgICAgICBTY2FubmVyIHNjYW5uZXIgPSBuZXcgU2Nhbm5lcihTeXN0ZW0uaW4pOwogICAgICAgIGludCBkaXN0ID0gc2Nhbm5lci5uZXh0SW50KCk7CiAgICAgICAgaW50IHRhbmsgPSBzY2FubmVyLm5leHRJbnQoKTsKICAgICAgICBpbnQgbiA9IHNjYW5uZXIubmV4dEludCgpOwogICAgICAgIGludCBzdG9wc1tdID0gbmV3IGludFtuKzJdOwogICAgICAgIHN0b3BzWzBdID0gMDsKICAgICAgICBzdG9wc1tuKzFdID0gZGlzdDsKICAgICAgICBmb3IgKGludCBpID0gMTsgaSA8PSBuOyBpKyspIHsKICAgICAgICAgICAgc3RvcHNbaV0gPSBzY2FubmVyLm5leHRJbnQoKTsKICAgICAgICB9CgogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbihjb21wdXRlX3JlZmlsbHMoZGlzdCx0YW5rLHN0b3BzLG4pKTsKICAgIH0KfQ==