Seriya Nömrələri
Proqram təminatının lisenziyalarının etibarlılığını yoxlamaq üçün M* şirkəti seriya nömrələrindən istifadə edir. Hər bir seriya nömrəsi dəqiq n ədəd onaltılıq rəqəmdən ibarət olan bir sətirdir. Doğru seriya nömrəsini tanımaq üçün M* şirkəti vəziyyət maşınından istifadə edir. Bu vəziyyət maşını k ədəd vəziyyətə S_1, S_2, ..., S_k və aralarındakı r keçidlərə malikdir. Keçidlər hərflərlə işarələnir və bir vəziyyətdən digərinə keçid qaydalarını müəyyən edir. Vəziyyət maşını elə qurulmuşdur ki, Si vəziyyətindən digər vəziyyətlərə aparan bütün keçidlər mütləq fərqli hərflərlə işarələnir (belə bir vəziyyət maşını deterministik adlanır).
Maşın S_1 vəziyyətindən başlayır və seriya nömrəsinin n hərfini ardıcıl olaraq emal edir. Tutaq ki, vəziyyət maşını hazırda S_i vəziyyətindədir və seriya nömrəsinin j-ci hərfini emal edir, onda:
Əgər S_i vəziyyətindən emal olunan hərflə işarələnmiş və S_k vəziyyətinə aparan keçid varsa, onda S_k vəziyyətinə keç və (j +1)-ci hərfin emalına başla.
Əgər S_i vəziyyətindən j-ci hərflə işarələnmiş keçid yoxdursa, onda emalı dayandır və seriya nömrəsinin etibarsız olduğunu qəbul et.
Seriya nömrəsi etibarlıdır, əgər onun bütün hərfləri uğurla emal olunubsa və maşın S_1 vəziyyətinə qayıdıbsa.
Sizin vəzifəniz verilmiş vəziyyət maşınının etibarlı kimi tanıya biləcəyi fərqli seriya nömrələrinin sayını müəyyən etməkdir.
Giriş verilənləri
Birinci sətir boşluqlarla ayrılmış üç tam ədəd k, n, r ehtiva edir. Birinci sətirdən sonra r sətir gəlir, hər biri üç ədəd S_i, F_i, L_i ehtiva edir. S_i tam ədədi i-ci keçidin başlanğıc vəziyyətidir və F_i tam ədədi keçidin son vəziyyətidir. Onaltılıq rəqəm L_i i-ci keçidin işarəsidir.
2 ≤ k, n ≤ 50; 1 ≤ r ≤ 800. 1 ≤ S_i, F_i ≤ k, burada i = 1, … r. ∀ (S_i, F_i, L_i), (S_j, F_j, L_j): S_i = S_j ⇒ L_i ≠ L_j, burada i, j = 1, …, r.
Çıxış verilənləri
Çıxış faylı bir tam ədəd ehtiva etməlidir – vəziyyət maşınının etibarlı kimi tanıdığı seriya nömrələrinin sayı.