Sıra
ABT ("Amortized Binary Trees") bazarında, müştəri ilə mövqelər arasında sıradadır. Kassirin -ci müştərisini xidmət etmək üçün lazım olan vaxt -dir.
Müştəri sırasında durmaq üçün lazım olan vaxt, onlardan əvvəlki bütün müştərilərin xidmət etmək üçün lazım olan vaxtların cəmi ilə bu müştəriyə xidmət etmək üçün lazım olan vaxtın cəmidir. Yəni, olan 3 nəfərlik bir sıradakı vaxtlar hər bir şəxs üçün hər biri aşağıdakı vaxtlardır: , və .
Müştərilərin xidmət görmədən əvvəl sıradakı vaxtların cəmini minimuma endirmək üçün, onlar yenidən sıralanmağa razı oldular. Lakin, -ci müştəri öz orijinal mövqeyindən geri çəkilmək istəmir (amma, ətrafına hər hansı bir sayda üçün irəli getməkdə məsələ yoxdur). Bu müştərilər hansı minimum cəmi vaxtlarla nəticələnə bilərlər?
Giriş verilənləri
Birinci sətir, sıradakı müştərilərin sayını təyin edir.
İkinci sətir, hər bir müştəri üçün kassirin xidmət etmək üçün lazım olan vaxtı təyin edir.
Üçüncü sətir, hər bir müştəri üçün geri çəkilməyə razı olduğu maksimum mövqe sayını təyin edir.
Çıxış verilənləri
Yalnız bir sətirdə, ən az sıra gözləmə vaxtlarının minimal cəmini çıxarın.
Nümunələr
Qeyd
Birinci nümunədə müştəriləri yenidən təşkil etməyin iki etibarlı yolu var:
-st, -nd və -rd biri (heç kəsi yerindən tərpətmir);
-ci, -ci və -ci;
-ci, -ci və -ci;
-ci, -ci və -ci.
Bu hallarda vaxtların cəmi:
;
;
;
.
Gördüyümüz kimi burada ən yaxşı cavab -dır. Göstərilə bilər ki, bu növbədə insanların başqa mümkün tənzimləmələri yoxdur.
İkinci nümunədə, hər iki insan hər hansı bir mövqedə ola bilər, beləliklə onların hər iki mövcud sıralaması da səhihdir və onlar eyni cavab olan -ü verirlər.
Üçüncü nümunədə, heç bir insanı hər hansı bir mövqedə hərəkət etməyəcəyinizi göstərmək mümkündür və onların yeganə səhih sıralaması əvvəlki sıradır. İnsanların bu sıradakı gözləmə vaxtlarının cəmi olacaqdır.