A. Karralilar soni
Xotira: 256 MB, Vaqt: 1000 msDilnoza va Malika matematikada natural sonning karralilari haqida endigina o‘rganishdi. Yangi tushunchani mashq qilish uchun ular quyidagi o‘yinni o‘ynashga qaror qilishdi: har biri bittadan nolga teng bo‘lmagan natural son tanlaydi va berilgan yopiq oraliq uchun (yopiq oraliqlarda chegaralar ham oraliqqa kiradi), tanlangan sonning shu oraliqda nechta karralisi borligini hisoblaydi. Kim tanlagan son berilgan oraliqda ko‘proq karralarga ega bo‘lsa, o‘sha yutadi, yoki karralar soni teng bo‘lsa, durang bo‘ladi.
Sizga ikki qiz tanlagan sonlar hamda berilgan oraliqlarni aniqlovchi sonlar beriladi, sizning vazifangiz o‘yinda kim yutganini va qaysi son yutishga olib kelganini aniqlashdan iborat.
Kirish faylida oltita qiymat berilgan: \(x,\ a,\ b,\ y,\ c,\ d\) - ular tartib bilan Dilnoza tanlagan son va unga berilgan oraliq chegaralari, Malika tanlagan son va unga berilgan oraliq chegaralarini bildiradi.
\(1 \le x, y \le 10^6\)
\(1 \le a, b, c, d \le 10^9\)
Eslatma: \(a\le b\) yoki \(c \le d\) ekanligiga kafolat berilmaydi!
Ekranga yutgan qizning ismi va P qiymati chiqaring, bu qiymat o‘yinda yutishga olib kelgan sonni bildiradi, ular orasiga bitta bo‘sh joy qo‘yiladi. Agar durang bo‘lsa, “Durang” so‘zi chiqaring, undan keyin bo‘sh joy va karralar sonining teng qiymati yozing.
| # | INPUT.TXT | OUTPUT.TXT |
|---|---|---|
| 1 |
7 9 30 9 60 20 |
Malika 4 |
| 2 |
14 140 123456 23 230 153267 |
Dilnoza 8809 |
B. Teskari masala
Xotira: 256 MB, Vaqt: 1000 msDasturlashni endi boshlagan o'quvchilar eng birinchi ishlagan masalasi ikki sonning yig'indisini hisoblash bo'lsa kerak. Bu masalada ushbu masalaning teskarisini topish talab qilinadi, ya'ni butun son \(X\) beriladi, shunday \(A\) va \(B\) ni topingki, yig'indisi \(X\) ga teng bo'lsin. Faqat bir shart bor, \(A\) ning ham, \(B\) ning ham absolyut qiymati \([L, R]\) oralig'ida bo'lishi kerak, boshqacha aytganda, \(L \le |A|, |B| \le R\) bo'lsin.
Birinchi qatorda butun son \(T (1 \le T \le 10^4)\) - testlar soni kiritiladi.
Har bir test uchun:
Birinchi qatorda uchta butun son \(X \), \(L \) va \(R\) kiritiladi.
\(-2 \cdot 10^9 \le X \le 2 \cdot 10^9\)
\(0 \le L \le R \le 10^9\)
Har bir test uchun alohida qatorda ikkita butun sonni chop eting, bunda ularning yig'indisi \(X\) ga teng bo'lsin va har birining absolyut qiymati \([L, R]\) oralig'ida bo'lsin. Agar bir nechta yechim mavjud bo'lsa istalganini chiqarishingiz mumkin. Agar yechim mavjud bo'lmasa "impossible" so'zini (qo'shtirnoqlarsiz) chop eting.
| # | INPUT.TXT | OUTPUT.TXT |
|---|---|---|
| 1 |
6 10 2 8 -15 5 10 0 10 20 100 10 20 1 10 20 0 0 10 |
5 5 -7 -8 15 -15 impossible 11 -10 0 0 |
C. Gilam
Xotira: 256 MB, Vaqt: 1000 ms— Buxoroning eng mashhur gilamlari to'rtburchak bo'lib, ularni yoyish ham o'ziga xos san'at.
Ustozning ustaxonasida \( N \times N \) katakdan iborat katta bir gilam yotibdi. Gilamning har bir katakchasiga \( 1 \) dan \( N^2 \) gacha bo'lgan natural sonlar ketma-ket yozilgan: avval qatorlar bo'yicha chapdan o'ngga, yuqoridan pastga tartibda. Ya'ni yuqori chap burchakdagi katak \( 1 \), undan keyingisi \( 2 \), va hokazo.
Masalan, \( N = 4 \) bo'lganda gilam quyidagi ko'rinishda bo'ladi:
\( 1 \quad 2 \quad 3 \quad 4 \)
\( 5 \quad 6 \quad 7 \quad 8 \)
\( 9 \quad 10 \quad 11 \quad 12 \)
\( 13 \quad 14 \quad 15 \quad 16 \)
Usta gilam yoqtirib qolgan bir burchagidan ushlab, uni gorizontal yoki vertikal yo'nalishda tortib olmoqchi. Gilam tortillayotganda tashqi qavat spiralsimon tarzda ichga qarab yig'iladi — xuddi ip g'altagi singari. Natijada barcha katakchalardagi sonlar bitta ketma-ketlik hosil qiladi.
Masalan, \( N = 4 \) bo'lganda:
Yuqori chap burchakdan gorizontal yo'nalishda tortilganda: \( 1 \ 2 \ 3 \ 4 \ 8 \ 12 \ 16 \ 15 \ 14 \ 13 \ 9 \ 5 \ 6 \ 7 \ 11 \ 10 \)
Pastki o'ng burchakdan vertikal yo'nalishda tortilganda: \( 16 \ 12 \ 8 \ 4 \ 3 \ 2 \ 1 \ 5 \ 9 \ 13 \ 14 \ 15 \ 11 \ 7 \ 6 \ 10 \)
Berilgan burchak va yo'nalish bo'yicha gilamni tortishdan hosil bo'lgan sonlar ketma-ketligini toping.

Birinchi qatorda natural son \( N \) — gilamning o'lchami beriladi.
Ikkinchi qatorda ikkita natural son \( X \) va \( Y \) — o'rashni boshlash kerak bo'lgan burchak koordinatalari beriladi:
\( \quad (1,\ 1) \) — yuqori chap;
\( \quad (1,\ N) \) — yuqori o'ng;
\( \quad (N,\ N) \) — pastki o'ng;
\( \quad (N,\ 1) \) — pastki chap.
Uchinchi qatorda bitta belgi \( D \) beriladi — \( \text{G} \) (gorizontal) yoki \( \text{V} \) (vertikal).
\( 2 \le N \le 500 \)
\( (X, Y) \in \{ (1,1),\ (1,N),\ (N,N),\ (N,1) \} \)
\( D \in \{ \text{'G'},\ \text{'V'} \} \)
Bitta qatorda \( N^2 \) ta son chop eting — gilamni o'rashdan hosil bo'lgan ketma-ketlik. Ikki qo'shni son orasida bitta bo'sh joy bo'lsin.
1-test: \( N = 4 \), yuqori chap burchak \( (1, 1) \) dan gorizontal yo'nalishda tortiladi. Birinchi qavat: \( 1\ 2\ 3\ 4 \), so'ng o'ng ustun pastga: \( 8\ 12\ 16 \), so'ng pastki qator chapga: \( 15\ 14\ 13 \), so'ng chap ustun yuqoriga: \( 9\ 5 \), keyin ichki qavat: \( 6\ 7\ 11\ 10 \).
2-test: \( N = 4 \), pastki o'ng burchak \( (4, 4) \) dan vertikal yo'nalishda tortiladi. Birinchi qavat yuqoriga: \( 16\ 12\ 8\ 4 \), so'ng yuqori qator chapga: \( 3\ 2\ 1 \), so'ng chap ustun pastga: \( 5\ 9\ 13 \), so'ng pastki qator o'ngga: \( 14\ 15 \), keyin ichki qavat: \( 11\ 7\ 6\ 10 \).
| # | INPUT.TXT | OUTPUT.TXT |
|---|---|---|
| 1 |
4 1 1 G |
1 2 3 4 8 12 16 15 14 13 9 5 6 7 11 10 |
| 2 |
4 4 4 V |
16 12 8 4 3 2 1 5 9 13 14 15 11 7 6 10 |
| 3 |
3 1 3 V |
3 6 9 8 7 4 1 2 5 |
D. Saralash
Xotira: 256 MB, Vaqt: 1000 msSizda \(n\) ta 1 dan \(n\) gacha sonlar yozilgan kartochkalar bor va ular ustma-ust joylashtirilgan. Bir amalda siz:
- Eng yuqoridagi kartochkani navbatning eng oxiriga qo'yishingiz mumkin yoki navbatdan olib saralangan ketma-ketligingizga qo'shishingiz mumkin.
Minimum nechta amalda bacha elementlarni saralangan ketma-ketligingizga qo'ya olasiz ?
Birinchi qatorda \(n(1 \le n\le10^6)\) soni kiritiladi.
Ikkinchi qatorda uzunligi \(n\) ga teng bo'lgan permutatsiya kiritiladi.
Bunda \(p_1\) ustma-ust joylashtirilgan kartochkalarning birinchi elementi.
Masala javobini chiqaring
| # | INPUT.TXT | OUTPUT.TXT |
|---|---|---|
| 1 |
7 7 5 6 3 1 2 4 |
16 |
| 2 |
5 5 4 1 3 2 |
11 |
E. Javoxir va Yetti
Xotira: 256 MB, Vaqt: 1000 msJavoxirning juda maxsus soni bor — bu sonni 7 ga bo'lganda qoldiq 0 bo'ladi. Javoxir bu xususiyat haqida o'ylaganida, u doim: "WOW, bu ajoyib son!" deydi.
Hammaga ma'lumki, Javoxir oddiy uy hayvoni emas — u aqlli va qiziquvchan. Shuning uchun u asl sonni quyidagicha o'zgartiradi: Javoxir sonni ikkilik (binary) ko'rinishda yozadi, so'ngra ikkita indeks tanlaydi va o'sha pozitsiyalardagi bitlarni o'zaro almashtiradi. U bir muddat shu kabi bir necha almashtirish amallarini bajaradi.
Javoxir bajargan almashtirish amallarining umumiy sonini eslamaydi, lekin u ikkilik ko'rinishda qaysi pozitsiyalar biror algaqida almashtirilganini eslab qolgan. Bundan tashqari, u eng muhim bit (most significant bit) hech qachon almashtirilmaganini ham eslaydi.
Endi Javoxir asl sonni tiklashni istaydi, ammo u band — shuning uchun sizdan yordam so'raydi. Javoxirga yordam bera olasizmi?
Kirish bir nechta test holatlaridan iborat. Har bir test holati uch qatordan tashkil topadi.
Birinchi qatorda bitta butun son \(n\) — o'zgartirilgan son \((7 \le n \le 2^{60})\).
Ikkinchi qatorda bitta butun son \(k\) — almashtirilgan pozitsiyalar soni \((2 \le k \le 20)\).
Uchinchi qatorda \(k\) ta turli butun son o'sish tartibida — eng kichik aniq bitdan (zero-indexed) hisoblab almashtirilgan pozitsiyalar.
Har bir test holati uchun bitta butun son chop eting: 7 ga bo'linadigan tiklangan sonni. Agar bir nechta javob mavjud bo'lsa, eng katta qiymatni chop eting.
1-test holatida asl son (almashtiruvlarsiz) 91 ga teng.
Indekslar: 6 5 4 3 2 1 0
91 = 1 0 1 1 0 1 1
Javoxir quyidagi almashtirish amallarini bajargan deb faraz qilaylik:
swap(0, 2, 1011011) -> 1 0 1 1 1 1 0 = 94
swap(4, 5, 1011110) -> 1 1 0 1 1 1 0 = 110
swap(0, 1, 1101110) -> 1 1 0 1 1 0 1 = 109
swap(2, 4, 1101101) -> 1 1 1 1 0 0 1 = 121
swap(0, 1, 1111001) -> 1 1 1 1 0 1 0 = 122
swap(2, 4, 1111010) -> 1 1 0 1 1 1 0 = 110
swap(0, 5, 1101110) -> 1 0 0 1 1 1 1 = 79
Shunday qilib, 79 soni hosil bo'lgan. E'tibor bering: Javoxir bir xil indeksni bir necha marta almashtirishga va 6-pozitsiya hech qachon almashtirilmaganiga.
2-test holatida 21 soni uchun faqat 0 va 3-pozitsiyalar almashtirilgan. 7 ga bo'linadigan eng katta son 28 ga teng.
| # | INPUT.TXT | OUTPUT.TXT |
|---|---|---|
| 1 |
79 5 0 1 2 4 5 |
91 |
| 2 |
21 2 0 3 |
28 |
| 3 |
1152921504606846975 5 13 39 40 58 59 |
1152921504606846975 |
F. Parity of Power Sum
Xotira: 256 MB, Vaqt: 1000 msSizga ikkita massiv beriladi:
- \(A\) — uzunligi \(N\) bo‘lgan nomanfiy butun sonlar massivi
- \(B\) — uzunligi \(N\) bo‘lgan nomanfiy butun sonlar massivi
Sizning vazifangiz:
\(S=\sum_{i=1}^{N} A_i^{B_i}\)
yig‘indining juft (Even) yoki toq (Odd) ekanligini aniqlash.
Kirish faylining dastlabki satrida bitta butun son, \(N(1 \le N \le 10^5) \) soni kiritiladi.
Kirish faylining ikkinchi satrida \(N\) ta butun son, \(A(0 \le A_i \le 10^9)\) massiv elementlari kiritiladi.
Kirish faylining uchinchi satrida \(N\) ta butun son, \(B(0 \le B_i \le 10^9)\) massiv elementlari kiritiladi.
\(S=\sum_{i=1}^{N} A_i^{B_i}\) juft bo'lsa Even aks holda Odd so'zini chop eting.
| # | INPUT.TXT | OUTPUT.TXT |
|---|---|---|
| 1 |
3 2 3 4 5 2 1 |
Odd |
| 2 |
1 8 2 |
Even |
G. Musiqa bloklari
Xotira: 256 MB, Vaqt: 2000 msMusiqa studiyasida pleylistdagi treklar ustida mashq qilinmoqda. Pleylistda jami \(n\) ta trek bor va ularning balandlik qiymatlari \(a_1, a_2, \ldots, a_n\) ko'rinishida berilgan.
Pleylistni bir nechta ketma-ket bloklarga ajratish kerak. Har bir blok aynan \(2\) ta yoki aynan \(3\) ta trekdan iborat bo'lishi shart. Har bir trek faqat bitta blokka kiradi va bloklar asl tartibni saqlaydi.
Bir blokning noqulayligi shu blok ichidagi eng katta va eng kichik balandliklar ayirmasiga teng, ya'ni agar blokdagi qiymatlar \(b_1, b_2, \ldots, b_k\) bo'lsa, uning noqulayligi
\[\max(b_1, b_2, \ldots, b_k) - \min(b_1, b_2, \ldots, b_k)\]
bo'ladi.
Sizdan barcha bloklar orasidagi eng katta noqulaylikni imkon qadar kichik qilish so'raladi.
Pleylistni talab qilingan tarzda ajratganda olinishi mumkin bo'lgan eng kichik maksimal noqulaylikni toping.
Birinchi qatorda bitta butun son \(n\) beriladi — treklar soni.
Ikkinchi qatorda \(n\) ta butun son \(a_1, a_2, \ldots, a_n\) beriladi — treklarning balandliklari.
Cheklovlar:
\(2 \le n \le 2 \cdot 10^5\)
\(1 \le a_i \le 10^9\)
Bitta butun son chiqaring — mumkin bo'lgan eng kichik maksimal noqulaylik.
1-misol uchun: pleylistni \((8, 4)\) va \((6, 10, 9)\) bloklariga ajratish mumkin. Birinchi blok noqulayligi \(8 - 4 = 4\), ikkinchi blok noqulayligi \(10 - 6 = 4\). Shuning uchun maksimal noqulaylik \(4\) bo'ladi va bundan kichik javobni olish mumkin emas.
| # | INPUT.TXT | OUTPUT.TXT |
|---|---|---|
| 1 |
5 8 4 6 10 9 |
4 |
| 2 |
6 5 5 5 5 5 5 |
0 |
| 3 |
8 3 5 4 9 8 7 1 2 |
2 |
H. Qadimiy Bitiklar
Xotira: 256 MB, Vaqt: 1000 msArxeologlar noma'lum qadimiy sivilizatsiyaning yozuv tizimini kashf etishdi. Ko'p yillik tadqiqotlar natijasida ular hayratlanarli xususiyatni aniqladilar: bu tilda so'zning ma'nosi faqat undagi harflar tarkibiga — qaysi harfdan nechtasi borligiga bog'liq, ularning **tartibi esa ahamiyatsiz**. Masalan, `tosh` va `shot` bu tilda aynan bir xil ma'noni anglatadi, chunki ikkalasida ham `t`, `o`, `s`, `h` harflari bittadan ishtirok etadi.
Tadqiqot guruhi yillar davomida \(n\) ta so'zdan iborat lug'at tuzgan. Yaqinda yangi qazilma joydan \(q\) ta noma'lum bitik topildi. Har bir bitik uchun aniqlang: u lug'atdagi biror so'z bilan bir xil ma'noga egami?
Birinchi qatorda ikkita butun son \(n, q\) berilgan — mos ravishda lug'atdagi so'zlar soni va topilgan bitiklar soni. \((1 \le n, q \le 10^5)\)
Keyingi \(n\) ta qatorda har birida bitta so'z berilgan — lug'atdagi so'zlar.
Keyingi \(q\) ta qatorda har birida bitta so'z berilgan — yangi topilgan bitiklar.
Har bir so'z faqat kichik lotin harflaridan iborat.
Har bir so'zning uzunligi kamida \(1\) va ko'pi bilan \(1000\)
\(n\) ta lug'at so'zlari uzunliklari yig'indisi \(\le 10^6\)
\(q\) ta bitiklar uzunliklari yig'indisi \(\le 10^6\)
Har bir bitik uchun alohida qatorda: agar u lug'atdagi biror so'z bilan bir xil harflar tarkibiga ega bo'lsa \(Yes\), aks holda \(No\) deb chiqaring.
| # | INPUT.TXT | OUTPUT.TXT |
|---|---|---|
| 1 |
3 4 apt cat hello pat tap dog act |
Yes Yes No Yes |
| 2 |
2 3 abc xyz bca zzz yxz |
Yes No Yes |
I. Yangi Shahar
Xotira: 256 MB, Vaqt: 1000 msCho'l o'rtasida yangi shahar qurilmoqda. Reja bo'yicha \(n\) ta inshoot qurilishi kerak. Ba'zi inshootlar boshqalariga bog'liq — masalan, suv tarmog'i qurilmagunicha, fontanni o'rnatib bo'lmaydi.
Jami \(m\) ta bog'liqlik berilgan. Har bir bog'liqlik "\(a\) inshoot \(b\) inshoatdan oldin qurilishi shart" degan ma'noni bildiradi. Bog'liqliklar sikl hosil qilmasligi kafolatlangan — ya'ni barcha inshootlarni qurish doimo mumkin.
Bir vaqtda faqat bitta inshoot quriladi. Agar bir nechta inshootning barcha bog'liqliklari bajarilgan bo'lsa, raqami eng kichik bo'lgani birinchi quriladi.
Barcha \(n\) ta inshootni to'g'ri tartibda qurish rejasini tuzing.
Birinchi qatorda ikkita butun son \(n, m\) — inshootlar soni va bog'liqliklar soni.
Keyingi \(m\) ta qatorda har birida ikkita butun son \(a_i\) va \(b_i\) — \(a_i\) inshoot \(b_i\) inshoatdan oldin qurilishi shart.
- \(1 \le n \le 2 \cdot 10^5\)
- \(0 \le m \le 5 \cdot 10^5\)
- \(1 \le a_i, b_i \le n, a_i \ne b_i\)
Bitta qatorda \(n\) ta bo'sh joy bilan ajratilgan butun son — inshootlarning qurilish tartibi.
| # | INPUT.TXT | OUTPUT.TXT |
|---|---|---|
| 1 |
4 3 4 1 4 2 4 3 |
4 1 2 3 |
| 2 |
5 4 3 1 3 2 5 4 2 4 |
3 1 2 5 4 |
J. Kompaniya siri
Xotira: 256 MB, Vaqt: 1000 msSardor katta bir kompaniyaning rahbari bo'lib, u sohadagi yetakchi kompaniya hisoblanadi. Kompaniyaning muvaffaqiyat siri — ichki boshqaruv tizimida. Kompaniyadagi har bir xodimga \(1\) dan \(N\) gacha bo'lgan alohida raqam berilgan bo'lib, har bir xodimning bevosita bo'limi boshlig'i ma'lum (1-raqamli xodim — bu Sardorning o'zi va uning hech qanday boshlig'i yo'q). Xodimlar o'rtasidagi munosabatlar ildizi 1-tugundan boshlanadigan daraxt tuzilmasini hosil qiladi.
Kompaniya xalqaro ko'rgazmaga taklif qilindi. Ko'rgazmada kompaniya ma'lum miqdordagi jamoalar (Sardor tomonidan belgilanadi) bilan qatnashadi, har bir jamoada ikkita xodim bo'ladi. Sardorga jamoalarning soni emas, ularning qiymati muhim. Shu sababli u quyidagi qoidani belgiladi: \(x\) va \(y\) xodimlar jamoani tashkil eta oladi, agar \(x\) — \(y\) ning bevosita rahbari bo'lsa, yoki ikkalasi ham bir xil rahbarga ega bo'lsa. Bunday jamoaning qiymati \(|x - y|\) ga teng. Shuningdek, Sardor (1-raqamli xodim) hech qanday jamoaga kirmaydi — u kompaniya menedjeri sifatida alohida turadi. Jamoalarning umumiy qiymati barcha jamoalar qiymatlarining yig'indisiga teng.
Har bir xodim faqat bitta jamoaga kirishi mumkin.
Shunday jamoalar tarkibini toping-ki, jamoalarning umumiy qiymati maksimal bo'lsin.
Birinchi qatorda butun son \(N\) — kompaniyadagi xodimlar soni.
Keyingi \(N-1\) ta qatorda xodimlar ierarxiyasi haqida ma'lumot beriladi: \(i\)-qatorda \(i\)-xodimning bevosita rahbarining raqami yozilgan.
\(1 \le N \le 1000\)
Ko'rgazmaga yuboriladigan jamoalarning maksimal umumiy qiymatini chop eting.
2-4 va 3-5 jamoalari tuziladi. Ularning qiymatlari: \(|2 - 4| = 2\) va \(|3 - 5| = 2\), jami: \(4\).
| # | INPUT.TXT | OUTPUT.TXT |
|---|---|---|
| 1 |
5 1 4 2 4 |
4 |
K. O'rtacha baho
Xotira: 256 MB, Vaqt: 1000 msAsilbek juda mashhur bola, lekin afsuski uning o'qishdagi baholari do'stlari soniga mutanosib emas. Uning do'sti Elbek Asilbekka yordam berishga qaror qildi va sizni dastur yozishga chaqirdi.
Hozirda Asilbekning umumiy o'rtacha bahosi \(N\) ga teng, va u allaqachon \(A\) ta fanga qatnashgan. Asilbek \(B\) ta qo'shimcha fanga qatnashib bo'lgach, umumiy o'rtacha bahosini \(M\) ga yetkazmoqchi. Elbek Asilbekka maqsadga erishish uchun keyingi \(B\) ta fanda qanday o'rtacha baho olishi kerakligini hisoblab berishda yordam bering. Baholash tizimida \(0\) dan past yoki \(10\) dan yuqori baho olish mumkin emas.
Birinchi qatorda \(T\) \((T \le 10^5)\) — test holatlari soni beriladi. Keyingi \(T\) ta qatorda har biri uchun bitta qatorda to'rtta son: \(N\), \(M\), \(A\) va \(B\) \((0 \le N, M \le 10;\ 1 \le A, B \le 100)\) — Asilbekning hozirgi umumiy o'rtacha bahosi, maqsadli umumiy o'rtacha baho, qatnashgan fanlar soni va qatnashadigan fanlar soni, mos ravishda. \(N\) va \(M\) haqiqiy sonlar, \(A\) va \(B\) esa butun sonlar.
Har bir test holati uchun alohida qatorda Asilbek maqsadli o'rtacha bahoga erishishi uchun keyingi \(B\) ta fanda olishi kerak bo'lgan o'rtacha bahoni chop eting (2 ta kasr raqamigacha yaxlitlangan). Agar maqsadga erishib bo'lmasa, `Impossible` so'zini chop eting. Kirishdagi xatolar \(10^{-3}\) gacha bo'lganda ham to'g'ri javob olinishi kafolatlanadi.
| # | INPUT.TXT | OUTPUT.TXT |
|---|---|---|
| 1 |
3 7 8 1 1 7 9 5 2 9.05 9.20 28 20 |
9.00 Impossible 9.41 |
L. Kichiklar soni
Xotira: 256 MB, Vaqt: 1000 msSizga \(n\) ta butun sondan iborat \(a_1, a_2, \ldots, a_n\) massiv berilgan.
\(i\) indeks "baxtli" deyiladi, agar \(a_i\) massivdagi \(a_i\) dan qat'iy kichik bo'lgan elementlar soniga teng bo'lsa.
Baxtli indekslar sonini toping.
Birinchi qatorda \(n\) — massiv uzunligi \((1 \le n \le 2 \cdot 10^5)\) beriladi.
Ikkinchi qatorda \(n\) ta butun son \(a_1, a_2, \ldots, a_n\) \((0 \le a_i \le n)\) beriladi.
Yagona qatorda baxtli indekslar sonini chiqaring.
Misol 2 uchun: massiv \([1, 2, 2, 3]\).
- \(i=1\): \(a_1 = 1\), \(1\) dan kichik element yo'q → \(0 \ne 1\) ✗
- \(i=2\): \(a_2 = 2\), (2) dan kichik: \({1}\) → \(1 \ne 2\) ✗
- \(i=3\): \(a_3 = 2\), xuddi shunday → \(1 \ne 2\) ✗
- \(i=4\): \(a_4 = 3\), \(3\) dan kichik: \({1, 2, 2}\) → \(3 = 3\) ✓
Faqat \(1\) ta indeks baxtli.
| # | INPUT.TXT | OUTPUT.TXT |
|---|---|---|
| 1 |
4 0 1 2 3 |
4 |
| 2 |
4 1 2 2 3 |
1 |
| 3 |
4 3 3 3 3 |
0 |
M. Buyruq Zanjiri
Xotira: 256 MB, Vaqt: 1000 msTog' cho'qqisidagi bosh shtabdan tog' etagidagi front chizig'igacha aloqa postlari tarmog'i o'rnatilgan. Postlar tog' yonbag'rida uchburchak shaklidagi ierarxik tuzilmada joylashgan:
- cho'qqida yagona bosh shtab turadi (\(1\)-post);
- har bir keyingi bosqich (qator) oldingisidan bitta ko'proq postga ega;
- postlar yuqoridan pastga, har bir bosqichda chapdan o'ngga ketma-ket natural sonlar bilan raqamlangan.
Quyida \(5\) bosqichli tarmog' sxemasi keltirilgan:

Harbiy buyruqlar bosh shtabdan quyidagi tartibda uzatiladi:
- buyruq har doim \(1\)-postdan (bosh shtab) boshlanadi;
- har bir postdan signal faqat keyingi bosqichdagi ikkita qo'shni postdan biriga — chap pastga yoki o'ng pastga — yo'naltiriladi;
- har bir post signalni kuchaytirib uzatadi, kuchaytirish darajasi shu post raqamiga teng.
Jangning hal qiluvchi lahzasida \(K\)-postga favqulodda buyruq yetkazish lozim. Marshrutni shunday tanlash kerakki, buyruq o'tgan barcha postlar raqamlari yig'indisi eng katta bo'lsin.
Masalan, \(9\)-postga buyruq yetkazishning bir necha yo'li mavjud:
| Marshrut | Yig'indi |
| \(1 \to 3 \to 6 \to 9 | \textbf{19}\) |
| \(1 \to 2 \to 5 \to 9 | 17\) |
| \(1 \to 3 \to 5 \to 9 | 18\) |
Ko'rinib turibdiki, \(1 \to 3 \to 6 \to 9\) marshruti eng katta yig'indini beradi.
Standart kirish oqimining birinchi qatorida \(K\) natural soni berilgan — buyruq yetkazilishi lozim bo'lgan post raqami. \((1\le K \le 10^9)\)
Standart chiqish oqimiga yagona qatorda \(K\)-postga olib keladigan marshrut bo'yicha postlar raqamlari yig'indisining eng katta qiymatini yozing.
| # | INPUT.TXT | OUTPUT.TXT |
|---|---|---|
| 1 |
9 |
19 |
N. Tank va ta’minot ombori
Xotira: 256 MB, Vaqt: 1000 msHarbiy bazada jangovar tanklar uchun ehtiyot qismlar saqlanadigan uzun ombor bor. Har bir ehtiyot qismning o'z xizmat muddati bor: u qancha katta bo'lsa, shuncha ko'p yurishga yaroqli hisoblanadi.
Tanklar uzoq masofalarga chiqishdan oldin texnik xizmat ko'rish punktiga kiradi. Bu yerda mexanik askar tank uchun kerakli ehtiyot qismlarni ombordan olib keladi. Ayrim ehtiyot qismlar ishlatilgan bo'lsa, ularning xizmat muddati kamayadi. Shu sababli tank uchun mos bo'lgan qismlarni to'g'ri tanlash juda muhim.
Ombordagi ehtiyot qismlar bitta qatorda joylashgan: 1-qism 1-pozitsiyada, 2-qism 2-pozitsiyada va hokazo.
Mexanik:
- bir vaqtning o'zida faqat 1 ta ehtiyot qismni ko'tara oladi;
- bir sekundda 1 pozitsiya yuradi;
- barcha ishlar omborning 0-pozitsiyasida boshlanadi va tugaydi.
2 ta qismni olib kelish uchun ketadigan vaqt:
\(𝑡𝑖𝑚𝑒=2×(𝑝1+𝑝2)\)
bu yerda \(p_1\) va \(p_2\) — tanlangan qismlarning pozitsiyalari.
Bazadagi ta'minot bo'limi boshlig'i mexanikdan ikki xil topshiriq bo'yicha javob so'raydi:
- Savol topshirig'i (t=0): berilgan l qiymat uchun xizmat muddati kamida l bo'lgan 2 ta ehtiyot qismni ombordan olib kelish uchun eng kam necha soniya kerakligini aniqlash. Eng kam vaqt uchun xizmat muddati yetarli bo'lgan eng chapdagi 2 ta qism tanlanadi.
- Buyruq topshirig'i (t=1): xizmat muddati kamida 𝑙 bo'lgan eng chapdagi 2 ta ehtiyot qismni olib kelish, ularning asl xizmat muddatlarini chiqarish, so'ng har birining xizmat muddatini l ga kamaytirish.
Savol topshirig'ida qismlar o'zgarmaydi. Buyruq topshirig'ida esa tanlangan qismlarning xizmat muddati l ga kamayadi va ular keyingi topshiriqlar uchun yangilangan holda qaytariladi.
Birinchi qatorda ikkita butun son beriladi: n va q — ombordagi ehtiyot qismlar soni va topshiriqlar soni.
Ikkinchi qatorda n ta butun son beriladi: \(a_1,a_2,...,a_n\) — har bir qismning xizmat muddati.
Keyingi q qatorda ikkita son beriladi: t va 𝑙.
- Agar t=0 bo'lsa — savol topshirig'i.
- Agar t=1 bo'lsa — buyruq topshirig'i.
Cheklovlar:
- \(2 ≤ n ≤ 5 × 10^5\)
1 ≤ q ≤ n- \(1 ≤ l, a_i ≤ 10^5\)
t ∈ {0, 1}
Har bir topshiriq uchun bitta qator chiqaring:
- t=0 uchun: eng kam kerakli soniyani; agar 2 ta mos qism topilmasa, −1 chiqaring.
- t=1 uchun: eng kam soniyani, so'ng tanlangan 2 ta qismning xizmat muddatlarini (pozitsiya bo'yicha o'sish tartibida); agar 2 ta mos qism topilmasa, −1 chiqaring.
Agar xizmat muddati kamida l bo‘lgan qismlar orasidan 2 tasini tanlash kerak bo‘lsa, tank punktiga olib kelish vaqti ularning pozitsiyalari yig‘indisiga bog‘liq:
time=2×(p1+p2)
Bu yerda p1 va p2 — tanlangan qismlarning pozitsiyalari.
Eng kichik vaqt olish uchun xizmat muddati yetarli bo‘lgan eng chapdagi 2 ta qism tanlanadi.
| # | INPUT.TXT | OUTPUT.TXT |
|---|---|---|
| 1 |
6 4 15 30 10 25 5 20 0 20 1 10 1 15 0 15 |
12 6 15 30 12 20 25 -1 |
O. Muntazam uchburchak
Xotira: 256 MB, Vaqt: 1000 msMuntazam uchuburchak bu - hamma tomonlari va burchaklari bir xil bo'lgan uchburchakdir.
Sizga uzunligi 1 ga teng bo'lgan \(n\) ta muntazam uchburchak berilgan.
Siz berilgan uchburchaklarni birlashtirish orqali nechta turli xil qavariq ko'pburchak yasash mumkinligini topishingiz kerak ?
Shakllar aylantirilsa yoki akslantirilsa ham bir xil hisoblanadi.
Yagona qatorda \(n(1\le n\le 10^6)\) kiritiladi.
Masala javobini ekranga chiqaring.
Birinchi test uchun izoh:

| # | INPUT.TXT | OUTPUT.TXT |
|---|---|---|
| 1 |
16 |
5 |