K-çeşidləmə
Çeşidləmə məsələsi, verilmiş ədədlər massivini (və ya digər obyektləri) artan və ya azalan qaydada sıralamaqdan ibarətdir. Bu məsələnin bir çox variantları mövcuddur və bir çoxunda çox effektiv alqoritmlər var. Bu alqoritmlərin mühüm parametrlərindən biri, massiv elementlərinin dəyişdirilmə sayıdır ki, bu da sıralama üçün zəruridir.
Biz burada -çeşidləmə adlandırılan çeşidləmə variantını nəzərdən keçirəcəyik. Bu variantda bir əməliyyatla (adlandırılan -dəyişmə) massivdəki iki elementin yerlərini dəyişmək icazə verilir, bu elementlərin indeksləri tam olaraq fərqlənir. Məsələn, əgər başlanğıc massiv [, , , , ] şəklindədirsə və = -dürsə, bu massiv iki əməliyyatla artan qaydada sıralana bilər (birinci dəyişmədən sonra massiv [, , , , ] şəklində olacaq, ikinci dəyişmədən sonra isə [, , , , ]).
Verilmiş tam ədədlər massivi , ..., . Sizin vəzifəniz bu massivi artan qaydada sıralamaq üçün lazım olan minimal -dəyişmələrin sayını müəyyən etməkdir.
Giriş məlumatları
Birinci sətir tam ədəd ( ≤ ≤ ) ehtiva edir. İkinci sətir tam ədəd , ..., ( ≤ ≤ hər bir üçün -dən -ə qədər) ehtiva edir. Üçüncü sətir tam ədəd ( ≤ ≤ - ) ehtiva edir.
Çıxış məlumatları
Əgər verilmiş massiv təsvir edilən tip əməliyyatlarla artan qaydada sıralana bilirsə, sıralama üçün lazım olan minimal -dəyişmələrin sayını çıxarın. Əks halda, bir ədəd çıxarın.