დროის ლიმიტი: 1 წმ
მეხსიერების ლიმიტი: 64 მეგაბაიტი
შემავალი მონაცემები: stdin
გამომავალი მონაცემები: stdout
წყარო: USACO, 2006/07, MAR, BRONZE
ფერმერმა ჯონმა გამოიძახა თავისი N (1 <= N <= 10) ძროხა მრგვალ მაგიდასთან სასაუბროდ. ძროხებს სურთ,
რომ შეხვედრა უფრო მიმზიდველი გახდეს - ერთმანეთის გვერდით მსხდომი ორი ძროხის სიმაღლე უნდა
განსხვავდებოდეს არაუმეტეს K (1 <= K <= 1,000,000) მილიმეტრით. i-ურ ძროხას გააჩნია მთელი რიცხვით
გამოსახული H_i (1 <= H_i <= 1,000,000) მილიმეტრი სიმაღლე,
დათვალეთ ვარიანტების რაოდენობა - რამდენნაირად შეიძლება დასხდნენ ძროხები მაგიდის გარშემო ისე,
რომ სხვაობა მეზობელ ძროხათა სიმაღლეებს შორის არ აღემატებოდეს K მილიმეტრს. ორი ვარიანტი ითვლება
განსხვავებულად, თუკი რომელიმე ძროხის მარცხენა მეზობელი განსხვავებულია. პასუხი გარანტირებულად
თავსდება 32-ბიტიან მთელ რიცხვში.
შეტანის ფორმატი:
* სტრიქონი 1: ჰარით გაყოფილი ორი მთელი რიცხვი N და K.
* სტრიქონები 2..N+1: სტრიქონი i+1 შეიცავს H_i სიმაღლეს.
გამოტანის ფორმატი:
* სტრიქონი 1: ვარიანტების რაოდენობა, რომლითაც ძროხები შეიძლება მოთავსდნენ მაგიდის გარშემო
ისე, რომ მეზობლად განთავსებულ ძროხების სიმაღლეთა შორის სხვაობა K-ს არ აღემატება.
შესატანი მონაცემები
4 10 2 16 6 10 დაკოპირება
გამოსატანი მონაცემები
2 დაკოპირება
სულ 4 ძროხაა სიმაღლეებით 2, 16, 6, 10. ორი ძროხა, რომელთა სიმაღლეებს შორის განსხვავება 10-ს აღემატება,
ერთმანეთის გვერდით ვერ დაჯდება.
ცხადია, რომ 2 და 16 სიმაღლის მქონე ძროხები გვერდიგვერდ ვერ დასხდებიან. ისინი უნდა განთავსდნენ ერთმანეთის
პირისპირ (4 ძროხის შემთხვევაში). მათ შორის 6 და 10 სიმაღლის ძროხების განთავსების სულ 2 ვარიანტია.