A. Akobirning soati

Xotira: 32 MB, Vaqt: 1000 ms
Masala

Akobir texnologiyaga juda qiziqadi! U o‘zi uchun maxsus timer dastur yaratmoqchi. Dasturi qoidalarga qat’iy amal qiladi: soatlar (h) va daqiqalar (m) sonlarini to‘g‘ri kiritmasa, "error" chiqaradi! Ayniqsa, biror kishi 60 yoki undan ham ko‘p daqiqa kiritganida bu xatolik yuz beradi.

Bir kuni Akobir vaqtni noto‘g‘ri kiritib qo‘ydi va, tabiiyki, dastur "error" berdi. U sizdan yordam so‘ramoqda: Akobir dasturga kiritgan soat va daqiqa sonlari asosida to‘g‘ri va xatosiz kiritilishi mumkin bo‘lgan vaqtlarni aniqlab bering!

Kiruvchi ma'lumotlar:

Bir qatorda, bo‘sh joy bilan ajratilgan ikki ta son: \(h\) — soatlar va \(m\) — daqiqalar soni kiritiladi.

  • Subtask #1: \(0\le h\le10; 0\le m\) (10 ball)
  • Subtask #2: \(0\le h\le100; 0\le m\) (15 ball)
  • Subtask #3: \(0\le h\le10^4; 0\le m\) (20 ball)
  • Subtask #4: \(0\le h\le10^8; 0\le m\) (25 ball)
  • Subtask #5: \(0\le h\le10^{18}; 0\le m\) (30 ball)
Chiquvchi ma'lumotlar:

Akobir kiritgan soatlar va daqiqalar asosida, dastur error chiqarmaydigan, to‘g‘ri kiritilishi mumkin bo‘lgan soat va daqiqa sonlarini bir qatorda chiqaring.

Izoh:

Namunaviy testcase bilan haqiqiy testcaselar bir-biridan farq qiladi!

Misollar:
# INPUT.TXT OUTPUT.TXT
1
7 48
7 48
2
6 39
6 39
3
1 80
2 20

B. Yakkaxonlik tartibi

Xotira: 32 MB, Vaqt: 1000 ms
Masala

Tasavvur qiling, siz sehrli sonlar yurtidasiz! Sizga \(t\) ta butun sonli kartochkalar beriladi. Har bir kartochkadagi son faqat bitta marta ishlatilishi kerak – ya'ni, har bir son faqat bir marta qatnashishi mumkin! Maqsad: barcha kartochkalardan foydalanib, takrorlanmagan sonlardan iborat yangi qiziqarli ro'yxat tuzing.

Kiruvchi ma'lumotlar:

Birinchi qatorda \(t\), sizga beriladigan sonlar soni kiritiladi.

Ikkinchi qatorda \(t\) ta \(n_i\), sizga berilgan \(i(1\le i\le t)\)-elementi beriladi.

  • Subtask #1: \(1\le t\le10;1\le n\le100\) (10 ball)
  • Subtask #2: \(1\le t\le100;1\le n\le10^4\) (15 ball)
  • Subtask #3: \(1\le t\le10^3;1\le n\le10^6\) (20 ball)
  • Subtask #4: \(1\le t\le10^4;1\le n\le10^8\) (25 ball)
  • Subtask #5: \(1\le t\le10^5;1\le n\le10^9\) (30 ball)
Chiquvchi ma'lumotlar:

Bir qatorda elementlari faqat bir marta qatnashuvchi elementlar to'plamini chop eting.

Izoh:

Siz chiqargan javobning tartibi inobatga olinmaydi, javobni istalgan tartibda chop etishingiz mumkin.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
5
99 99 99 99 99
99
2
7
22 39 84 2 39 45 45
2 39 45 84 22
3
7
98 30 64 64 30 22 64
64 98 30 22

C. Aziz va naqt pul

Xotira: 32 MB, Vaqt: 1000 ms
Masala

Aziz o'zining kundalik ish haqini bankdan naqd qilib olishni yoqtiradi. Biroq Aziz banki o'ziga xos: bu yerda har safar, mijoz qancha pul so‘rasa ham, bank xodimlari bu summani eng yirik mavjud banknotalarga bo‘lib beradi. Bankda faqat quyidagi qiymatdagi notalar mavjud: 1$, 10$, 100$, 1000$, va h.k. Aziz ketma-ket \(t\) kun davomida pul oladi; har bir \(i\)-kuni uning oladigan miqdori \(n_i\)​ bo‘ladi va shu kunning o'zidayoq bu pulni naqt pulga almashtiradi. Barcha kunlarda olgan naqt pullarini to‘plab, Aziz umumiy hisobda nechta banknota yig‘ib olgan bo‘lishini toping.

Masalan, agar Aziz bir kun 11$ olgan bo‘lsa, bank 1 ta 10$, va 1 ta 1$ beradi (ya’ni, jami 2 ta banknota).

Aziz \(t\) kun oxiridagi jami banknotalarini hisoblab, uning "banknota kolleksiyasi" qanchalik boy ekanini bilmoqchi!

Kiruvchi ma'lumotlar:

Birinchi qatorda \(t\), Aziz qatnaydigan umumiy kunlar soni kiritiladi.

Keyingi \(t\) qatorda 0 dan katta bo'lgan \(n_i\)\(i(1\le i\le t)\)- kuni Aziz naxt qilmoqchi bo'lgan pul miqdori kiritiladi.

  • Subtask #1: \(t = 1;1\le n\le100\) (10 ball)
  • Subtask #2: \(1\le t\le10;1\le n\le10^4\) (15 ball)
  • Subtask #3: \(1\le t\le1000;1\le n\le10^6\) (20 ball)
  • Subtask #4: \(1\le t\le10^4;1\le n\le10^8\) (25 ball)
  • Subtask #5: \(1\le t\le2*10^5;1\le n\le10^{12}\) (30 ball)
Chiquvchi ma'lumotlar:

Aziz naxt pulni ishlatmagan deb faraz qilgan holda uning jami banknotalar sonini chop eting.

Izoh:

Namunaviy testcase bilan haqiqiy testcase bir-biridan farq qiladi!

Misollar:
# INPUT.TXT OUTPUT.TXT
1
1
11
2
2
2
11
4
6

D. TheOddOneOut

Xotira: 72 MB, Vaqt: 1000 ms
Masala

TheOddOneOut - so'zining ma'nosi berilgan elementlar ichidan g'alatisini topishdan iboratdir. Sarvar  \(N+1\) ta element yozayotgan edi, bu elementlar 1 dan \(N\) gacha, va Sarvar ularning orasiga bitta sonni adashib ikki marta yozib qo'ydi. Sarvar shu sonni qidirmoqchi bo'ldi, lekin u allaqachon 69420 ta son yozib bo'lgandi va hammasini tekshirib chiqishni istamadi va sizdan yordam so'radi.

Kiruvchi ma'lumotlar:

Birinchi qatorda \(N\), Salim yozgan eng so'nggi son kiritiladi.

Keyingi qatorda \(N+1\) ta \(a_i\) soni kiritiladi. \((1\le a+i\le N; 1\le i\le N+1)\)

  • Subtask #1: \(1\le n\le 10\) (10 ball)
  • Subtask #2: \(1\le n\le 100\) (15 ball)
  • Subtask #3: \(1\le n\le 10^4\) (20 ball)
  • Subtask #4: \(1\le n\le 10^5\) (25 ball)
  • Subtask #5: \(1\le n\le 10^6\) (30 ball)
Chiquvchi ma'lumotlar:

Yozilgan ro'yhat ichidan ikki marta qatnashgan elementni toping.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
6
1 2 3 4 5 5 6
5
2
91
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91
61

E. Absolut sum

Xotira: 32 MB, Vaqt: 1000 ms
Masala

Abdusattorda bir dona topshiriq bor: unga berilgan \(n\) ta elementdan tashkil topgan to'plamning shunday \(k\) tasini tanlab olishi kerakki, shu uzunligi \(k\) ga teng bo'lgan qism to'plamning elementlari yig'indisi maksimal bo'lsin. Bu ishda siz Abdusattorga yordam berishingiz kerak.

Kiruvchi ma'lumotlar:

Birinchi qatorda ikkita butun sonlar \(n\) va \(k\), o'z navbatida jami elementlar soni va Abdusattor tanlashi kerak bo'lgan elementlar soni kiritiladi.

Keyingi qatorda \(n\) ta butun son \(a_i\), 0 dan farqli butun sonlar kiritiladi.

  • Subtask #1: \(1\le k\le n\le 10; |a_i|\le100\) (10 ball)
  • Subtask #2: \(1\le k\le n\le 500; |a_i|\le1000\) (15 ball)
  • Subtask #3: \(1\le k\le n\le 10^3; |a_i|\le10^4\) (20 ball)
  • Subtask #4: \(1\le k\le n\le 10^4; |a_i|\le10^5\) (25 ball)
  • Subtask #5: \(1\le k\le n\le 10^5; |a_i|\le10^6\) (30 ball)
Chiquvchi ma'lumotlar:

Yagona qatorda agar \(n\) ta elementdan tanlangan \(k\) ta elementning yig'indisi nomanfiy son bo'lsa, shu sonni \(10^3+7\) ga bo'lgandaqi qoldiqni, aks holda "-" ni chop eting.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
5 3
5 4 3 2 1
12
2
8 4
4 1 -1 -5 -6 -7 -8 -9
-

F. sum_sum

Xotira: 32 MB, Vaqt: 1000 ms
Masala

1 dan boshlab dastlabki \(n\) ta sonning yig’indisi quyidagi funksiya orqali ifodalanadi:

\(sum(n) = 1+2+3+...+n-1+n\)

Salim ushbu funksiyadan foydalanib o’qiga yangi nomli funksiyani yaratdi va uni quyidagi kabi ifodaladi:

\(sum\_sum(n)=sum(1)+sum(2)+...+sum(n-2)+sum(n)\)

Salim \(sum\_sum(10^9+7)\)ni hisoblash chog’ida hisobdan adashib ketti va unga endi sizning yordamingiz kerak.

Kiruvchi ma'lumotlar:

Birinchi qatorda \(t\), testlar soni kiritiladi.

Keyingi \(t\) qatorda bir dona butun son \(n\) kiritiladi.

  • Subtask #1: \(t = 1;1\le n\le100\) (10 ball)
  • Subtask #2: \(t\le10;1\le n\le10^4\) (15 ball)
  • Subtask #3: \(t\le1000;1\le n\le10^4\) (20 ball)
  • Subtask #4: \(t\le10^4;1\le n\le10^5\) (25 ball)
  • Subtask #5: \(t\le10^5;1\le n\le10^6\) (30 ball)
Chiquvchi ma'lumotlar:

Har bir test uchun natijani alohida qatorda \(10^9+7\)ga bo'lgandagi qoldiqni toping.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
1
1
1
2
1
2
4
Kitob yaratilingan sana: 05-Aug-25 16:00