Göydələn#11818

Göydələn

1 saniyə
128 meqabayt
Çox çətin

Beynəlxalq İnformatika Olimpiadası Yaponiya, Tsukuba şəhərində keçiriləcək. IOI-yə hazırlıq çərçivəsində biz Tsukuba-nın əsas küçəsində göydələnlər tikməyi planlaşdırırıq. Yeni bir görməli yer yaratmaq istədiyimiz üçün binalar aşağıdakı şərtlərə cavab verməlidir.

Biz əsas xətt boyunca bir düz xətt boyunca bina tikməyi planlaşdırırıq. Onların hündürlükləri a_1, a_2, a_3, ..., a_n kimi verilir. Bütün hündürlüklər fərqlidir. Binanın yerləşmə qaydası hələ müəyyən olunmadığı üçün onları istənilən qaydada düzəldə bilərik. Binalar IOI üçün bəzədiləcəkdir. Lakin istifadə olunan materiallarla bağlı məhdudiyyətlərə görə qonşu binaların hündürlüklərinin fərqinin cəmi -dən çox olmamalıdır. Başqa sözlə, küçənin bir tərəfinə yerləşdirilən binaların hündürlüklərini f_1, f_2, f_3, ..., f_n kimi təyin etsək, aşağıdakı ifadə yerinə yetirilməlidir:

|f_1 - f_2| + |f_2 - f_3| + ... + |f_{n-1} - f_n| \le L

Burada ədədi dəyəri göstərir.

Belə tələblərə cavab verən bina silsilələrinin sayını neçə mümkündür?

Verilmiş binaların sayı , onların hündürlükləri və qonşu binaların hündürlük fərqlərinin cəmi üçün məhdudiyyətinə görə, binaların uyğun peşəkar surətini hesablamaq üçün bir proqram yazın. Cavab çox böyük ola bilər, buna görə cavabın -ə bölünmə qalığını çıxışa verin.

Giriş

Aşağıdakı məlumatı standart girişdən oxuyun.

  • Birinci sətir iki tam ədəd və L~(1 \le n \le 100, 1 \le L \le 1000) — binaların sayı və qonşu binaların hündürlük fərqlərinin cəmində üst həddini ehtiva edir.

  • İkinci sətir tam ədəd a_1, a_2, a_3, ..., a_n~(1 \le a_i \le 1000~(1 \le i \le n), a_i \ne a_j~(1 \le i < j \le n)) — binaların hündürlüklərini ehtiva edir.

Çıxış

Bir ədəd çıxarın — binaların uyğun peşəkar surətinin sayının -ə bölünmə qalığı.

Nümunələr

Nümunə 1

Loading
Loading

Nümunə 2

Loading
Loading

Qeyd

Altbölmə 1 [5 xal]: n \le 8.

Altbölmə 2 [15 xal]: n \le 14, L \le 100.

Altbölmə 3 [80 xal]: Əlavə məhdudiyyət yoxdur.