Masala C
Serverlarni nusxalash
Tashkilotda ta server mavjud bo‘lib, ularning har biri uchun zaxira nusxa olish muddati daqiqa vaqt talab etadi. Serverlar dan gacha tartiblanadi va zaxira nusxa olish ishlarini faqat ketma‑ket bajarish mumkin (serverlar tartibida bo‘lishi shart). Zaxira nusxa olish jarayonida, agar bir kunda bir nechta server zaxiralansa, ular orasida majburiy daqiqa bo‘sh vaqt ajratiladi. Serverning zaxira nusxasi bir kun ichida butunlay amalga oshirilishi lozim. Ya'ni har bir serverning zaxira nusxasini olish jarayoni toʻliq bir kun davomida bajarilishi kerak. Ya’ni, agar serverning zaxira nusxasi olish jarayoni daqiqa davom etsa, ushbu daqiqa bir kunda bajarilishi shart. Agar qolgan vaqt daqiqadan kam boʻlsa, ushbu serverning nusxasi olish jarayoni yarim kun ichida bo'lib qolmaydi, balki toʻliq keyingi kunga oʻtkaziladi.
Tashkilot ish jarayonidagi qo‘shimcha yukni kamaytirish maqsadida, zaxira nusxa olish jarayonidagi eng ko‘p sarflanadigan (kunlik) vaqtni minimal darajaga tushirishni xohlaydi. Sizga maksimal kun ichida barcha serverlarning zaxira nusxasini olish uchun zarur bo‘lgan minimal kunlik vaqt chegarasi ni aniqlash topshirig‘i beriladi. Agar hatto eng kattaroq imkoniyat (ya’ni, server zaxira vaqtlarining yig‘indisi va bo'sh vaqtlar qo‘shilganda) ham kundan oshsa, ni chiqarishingiz kerak.
Birinchi qatorda va butun sonlari
Ikkinchi qatorda ta butun son,
Barcha serverlarning zaxira nusxasini olish uchun talab qilinadigan minimal kunlik vaqt chegarasi , yoki (agar kundan ichida rejalashtirish mumkin bo‘lmasa).
# | input.txt | output.txt |
---|---|---|
1 |
5 3 2 3 1 4 1 5 |
7 |
2 |
6 9 4 2 6 6 3 10 6 |
10 |
Serverlar tartibida natijada quyidagicha bo'ladi:
- 1‑va 2‑serverlar birinchi kunda: 3 + 2 + 1 = 6 daqiqa
- 3‑va 4‑serverlar ikkinchi kunda: 4 + 2 + 1 = 7 daqiqa
- 5‑server uchinchi kunda: 5 daqiqa
Maksimal kunlik yuk 7 daqiqa bo‘ladi, demak
1 kun 1440 daqiqadan iborat