Keep on Truckin'
Ένας οδηγός φορτηγού σκοπεύει να οδηγήσει κατά μήκος της εθνικής οδού Trans-Canada, από το Vancouver στου St. John's, σε απόσταση χλμ, σταματώντας κάθε βράδυ σε ένα μοτέλ. Ο οδηγός έχει μια λίστα με τις τοποθεσίες των κατάλληλων μοτέλ, με την αντίστοιχη απόσταση κάθε μοτέλ από το σημείο εκκίνησης στο Βανκούβερ, μετρημένη σε χιλιόμετρα. Μερικές από τις τοποθεσίες των μοτέλ είναι: , , , , , , , , , , , , , , ωστόσο μπορεί να προστεθούν περισσότερες τοποθεσίες μοτέλ λίγο πριν την έναρξη του ταξιδιού.
Προσδιορίστε εάν είναι δυνατό να ολοκληρώσετε το ταξίδι εάν:
η εταιρεία φορτηγών επιμένει ότι ο οδηγός πρέπει να διανύει ελάχιστη απόσταση χλμ την ημέρα,
ο νόμος ορίζει μέγιστη απόσταση χλμ ανά ημέρα, και
κάθε βράδυ, ο οδηγός πρέπει να μένει σε κατάλληλο μοτέλ (από την παραπάνω λίστα ή τις πρόσθετες τοποθεσίες που περιγράφονται παρακάτω).
Ο οδηγός ενδιαφέρεται για διαφορετικές επιλογές όταν κάνει το ταξίδι και πρέπει να γράψετε ένα πρόγραμμα για να υπολογίσετε πόσες διαφορετικές επιλογές υπάρχουν.
Για παράδειγμα, εάν δεν προστεθούν νέες τοποθεσίες μοτέλ, και , τότε είναι αδύνατο να πραγματοποιήσει το ταξίδι, διότι ο αριθμός των επιλογών είναι . Εάν και , τότε υπάρχει ένας τρόπος για να κάνει το ταξίδι, αλλά αν και , τότε υπάρχουν τέσσερις τρόποι για να κάνει το ταξίδι. Υπάρχουν δύο τρόποι για να κάνει το ταξίδι εάν , , και προσθέσουμε μία στάση στο .
Είσοδος
Οι δύο πρώτες γραμμές της εισόδου είναι η ελάχιστη απόσταση και η μέγιστη απόσταση , ακέραιοι αριθμοί. Η τρίτη γραμμή της εισόδου είναι ένας ακέραιος αριθμός , ακολουθούμενος από γραμμές, καθεμία από τις οποίες περιέχει τη θέση ενός επιπλέον κατάλληλου μοτέλ. Τα μοτέλ απέχουν όλα διαφορετική απόσταση μεταξύ τους από το Βανκούβερ.
Έξοδος
Εκτυπώστε τον αριθμό των διαφορετικών τρόπων με τους οποίους ο οδηγός μπορεί να επιλέξει τα μοτέλ για να πραγματοποιήσει το ταξίδι, υπό τους δεδομένους περιορισμούς.
Παραδείγματα
input
1
500
0
output
0
input
970
1030
0
output
1
input
970
1040
0
output
4
input
970
1030
1
4960
output
2
Comments