Şərti olaraq iki ardıcıllığı belə təsnif edək:
• 1-eyni, əgər onlar tamamilə eynidirsə (yəni, hər iki ardıcıllığın uzunluğu n-dir və a[1]=b[1], a[2]=b[2], …, a[n]=b[n] bərabərdir).
• 0.5-eyni, əgər onlar 1-eyni deyilsə, lakin uzunluqları eynidirsə və bir ardıcıllıq digərini elementlərin yerini dəyişməklə əldə edilə bilərsə (elementlərin sayını saxlayaraq).
• 0.25-eyni, əgər onlar nə 1-eyni, nə də 0.5-eyni deyilsə, lakin elementlərin miqdarını nəzərə almadan bir ardıcıllığın elementlər dəsti digərinin elementlər dəstinə bərabərdirsə. Yəni, bəzi elementlər müxtəlif ardıcıllıqlarda fərqli sayda təkrarlanır, məsələn: bir element birinci ardıcıllıqda üç dəfə, ikinci ardıcıllıqda iki dəfə, başqa bir element isə birinci ardıcıllıqda bir dəfə, ikinci ardıcıllıqda yeddi dəfə rast gəlinir. Elementlərin sırası dəyişə bilər.
• 0.125-eyni, əgər onlar nə 1-eyni, nə 0.5-eyni, nə də 0.25-eyni deyilsə və bu halda bir ardıcıllığın elementlər dəsti digərinin elementlər dəstinin alt dəstidir (elementlərin sırası dəyişə bilər, təkrarların sayı təsir etmir). Alt dəstin klassik tərifi belədir: A dəsti B dəstinin alt dəstidir, əgər A-nın hər bir elementi həm də B-yə aiddirsə; bu zaman B-də A-da olmayan əlavə elementlər ola bilər.
• 0-eyni, əgər yuxarıda qeyd olunan şərtlərdən heç biri yerinə yetirilmirsə.
İki ardıcıllığı analiz edəcək və yuxarıda sadalanan eynilik dərəcələrinə uyğun olaraq 1, 0.5, 0.25, 0.125 və ya 0 rəqəmlərindən birini çıxaracaq bir proqram yazın.
Birinci sətir iki ardıcıllıqdan birincisinin elementlərinin sayını n[1] ehtiva edir. İkinci sətir n[1] ədəd ehtiva edir — ardıcıllığın elementləri. Üçüncü və dördüncü sətirlər ikinci ardıcıllığı eyni şəkildə təyin edir. Hər bir ardıcıllıqda elementlərin sayı 1-dən 123456-ya qədərdir. Elementlərin dəyərləri 32 bitlik işarəli tam tipə yerləşir.
Proqram bu ardıcıllıqların eynilik dərəcəsini göstərən tək bir rəqəm (1, 0.5, 0.25, 0.125 və ya 0) çıxarmalıdır.
Nümunə 1
Nümunə 2
Nümunə 3
Nümunə 4
Nümunə 5