Masala C
Serverlarni nusxalash
Tashkilotda \(N\) ta server mavjud bo‘lib, ularning har biri uchun zaxira nusxa olish muddati \(B[i] \)daqiqa vaqt talab etadi. Serverlar\(1\) dan \(N\) 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 \(D\) 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 \(3\) daqiqa davom etsa, ushbu \(3\) daqiqa bir kunda bajarilishi shart. Agar qolgan vaqt \(3\) 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 \(T\) kun ichida barcha serverlarning zaxira nusxasini olish uchun zarur bo‘lgan minimal kunlik vaqt chegarasi \(X\) ni aniqlash topshirig‘i beriladi. Agar hatto eng kattaroq imkoniyat (ya’ni, server zaxira vaqtlarining yig‘indisi va bo'sh vaqtlar qo‘shilganda) ham \(T\) kundan oshsa, \(–1\) ni chiqarishingiz kerak.
Birinchi qatorda \(N, T\) va \(D\) butun sonlari \((1 ≤ N ≤ 10^5, 1 ≤ T ≤ 10^5, 0 ≤ D ≤ 1440).\)
Ikkinchi qatorda \(N\) ta butun son, \(B[i](1≤B[i]≤1440).\)
Barcha serverlarning zaxira nusxasini olish uchun talab qilinadigan minimal kunlik vaqt chegarasi \(X\), yoki \(–1\) (agar \(T\) 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\(X = 7.\)
1 kun 1440 daqiqadan iborat