Heş-funksiya sındırılması
Bəzi məlumatların qorunması məsələlərində heş-funksiyaları adlanan funksiyalar istifadə olunur. Bu funksiyaların ən mühüm siniflərindən biri polinomial heş-funksiyaları adlanır.
Tutaq ki, S = s_1s_2...s_l rəqəmlərdən ibarət, 0 ilə 9 arasında olan bir sıra verilib. O zaman polinomial heş-funksiyasının p(S, x, m) dəyəri aşağıdakı kimi hesablanır:
(a mod b ifadəsi a ədədinin b ədədinə bölünməsindən qalanı göstərir). Məsələn, tutaq ki, S = 0123, o zaman p(S, 2, 5) = (0·1+1·2+2·4+3·8) mod 5 = 4.
Heş-funksiyalarının tətbiq üsullarından biri parolların saxlanılmasıdır. Tez-tez belə olur ki, parolları qorunmayan bir verilənlər bazası cədvəlində saxlamaq lazım gəlir, buna görə də onların əvəzinə heş-funksiyaları saxlanılır. Parol yoxlanarkən daxil edilmiş sıradan heş-funksiyası hesablanır və cədvəldə saxlanılan dəyərlə müqayisə edilir.
Sizin vəzifəniz verilmiş x, m, L və v ədədlərinə görə 0 ilə 9 arasında rəqəmlərdən ibarət uzunluğu L olan S sıranı tapmaqdır ki, onun polinomial heş-funksiyası p(S, x, m) v bərabər olsun.
Giriş verilənləri
Giriş faylı dörd tam ədəd ehtiva edir: x (x - sadə ədəd, 5 ≤ x ≤ 100), m (m ikiqatın qüvvətidir, 1 ≤ m ≤ 256), L (10 ≤ L ≤ 100) və v (0 ≤ v ≤ m-1).
Çıxış verilənləri
Çıxış faylında axtarılan sıranı və ya belə bir sıra mövcud deyilsə NO SOLUTION yazın.