A. Tizimda jarima hisoblash
Xotira: 16 MB, Vaqt: 1000 msRoboContest.uz da yangi bo'lgan ko`pchilik ba'zida jarima tizimi qanday ishlashini tushunishmaydi. Bunda jarima quyidagicha baholanadi: Har bir xato yuborilgan urinish uchun 5 daqiqa jarima hisoblanadi va to'g'ri javobni yuborgan vaqtini daqiqa sifatida yaxlitlab qo'shiladi. Aytaylik foydalanuvchi to'g'ri javob yuborishdan oldin 5 ta xato urinishga yo'l qo'ydi. To'g'ri javobni esa 21-daqiqada yubordi.Unutmang 21 daqiqa deganda misol uchun "20:SS" nazarda tutuiladi. Unda bu masala uchun jarima:
\(20 + 5 \cdot 5 = 45\)
Kabi hisoblanadi.
Kirish faylida yagona qatorda xato urinishlar soni \(X(0\le X \le 100)\) va to'g'ri yechim nechanchi daqiqada yuborganligi \(M(1\le M \le 180)\) kiritiladi.
Chiqish faylida esa ushbu masala uchun yig'ilgan jarimani hisoblashingiz kerak bo'ladi.
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
5 21 |
45 |
B. Qiziqarli ketma-ketlik
Xotira: 16 MB, Vaqt: 1000 msKunlardan bir kun Robotoy bir ketma-ketlikni ko'rib qoldi. U quyidagicha:
\(1^3+2^3+3^3 + ... + N^3\).
U ketma-ketlikni qiziqarli deb ataydi qachonki uning bo'luvchilar soni toq bo'lsa.
Berilgan N uchun ketma-ketlik qiziqarli yoki yo'qligini aniqlang.
Kirish faylida yagona qatorda N (\(1\le N\le 10^{18}\)) soni beriladi.
Chiqish faylida agar ketma-ketlik qiziqarli bo'lsa ″Qiziqarli″ aks holda ″Qiziq emas″ deb chop eting.
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
1 |
Qiziqarli |
C. Kompyuter xonasida
Xotira: 32 MB, Vaqt: 1000 msTATU ning E blok 111-xonasi, kompyuter xonasidir. Va u yerda \(N\) ta kompyuter bir qator chiziqda joylashgan. Tez orada u xonada Shokirov Shodmon domlaning darsi boshlanadi. Shuning uchun ham hali xonaga kirmagan talabalar NB(darsda bo`lmadi) olmasligi uchun xonaga kirishni tezlashtirishlari lozim. Ammo aniqlandiki, bu xonadagi ba'zi kompyuterlardan foydalanib bo`lmaydi. Chunki u kompyuterlardan hozir kimdir foydalanyapti yoki ular buzuq. Xonaga kelgan har yangi talaba eshikka eng yaqin foydalanib bo`ladigan kompyuter oldiga o`tiradi va u kompyuterni yangi keladiganlar uchun foydalanilmaydigan qiladi. 1-kompyuter eshikka eng yaqin hisoblanadi.
Agar dars boshlanmasidan oldin xonaga \(K\) ta bola kirsa, ular band qiladigan kompyuter o`rinlarini o`sish tartibida ekranga chiqaring. Foydalanib bo`ladigan kompyuterlar yetarlicha ekanligi kafolatlanadi.
Birinchi qatorda ikkita butun son - \(N\) va \(K(1 \leq K \leq N \leq 2*10^5)\) sonlari kiritiladi.
Keyingi qatorda \(N\) ta butun son kiritiladi. \(i\)-son: \(1\) bo`lsa, bu kompyuterdan foydalanib bo`lmasligini, \(0\) bo`lsa esa bu kompyuterdan foydalanib bo`lishini anglatadi.
Darsga ulgurgan talabalar o`tiradigan kompyuter o`rinlarini orqali chiqaring.
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
7 3 1 0 1 1 0 0 1 |
2 5 6 |
2 |
3 2 0 0 0 |
1 2 |
D. Karimjon va ABC
Xotira: 32 MB, Vaqt: 1000 msKarimjon bu safar bo`sh \(S\) satrni oldi. So`nga bir necha marotoba uning ustida quyidagi amalni bajardi.
U bir amalda \(S\) satrning istalgan joyiga 'A' belgisini qo`shadi. Keyin aynan shu 'A' belgisidan o`ng tomonga istalgan joyga 'B' belgisini joylashtiradi. Keyin aynan shu 'B' belgisidan o`ng tomonga istalgan joyga 'C' belgisini joylashtiradi.
Sizga \(T\) satr beriladi. Shu \(T\) satr natijaviy satr bo`la olsa 'YES' bo`lmasa 'NO' deb chiqaring.
Yagona qatorda bitta satr \(T\) satri kiritiladi. Uning uzunligi \(2*10^5\) dan oshmasligi va satr faqat 'A', 'B', 'C' harflardan iborat ekanligi kafolatlanadi.
Yagona qatorda masala javobini chop eting.
Python tili uchun PyPy kompilyatoridan foydalanishni maslahat beramiz!
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
ABABCACBC |
YES |
2 |
ABCCAB |
NO |
E. Chiroyli songa alishtiring!
Xotira: 32 MB, Vaqt: 1250 msAdhamjonning sevimli \(K\) natural soni mavjud bo`lib, u shu songa bo`linadigan barcha natural sonlarni chiroyli deb hisoblaydi. Adhamjon bugun uyqudan turgach \(X\) sonini ko`rib qoldi. U hali endi uyqudan turgani uchun ham bu son chiroyli yoki chiroyli emasligini aniqlashtira olamadi.
Sizning vazifangiz shu sonning raqamlarini almashtirgan holda chiroyli natural son hosil qilishdir. Almashtirib bo`lgach son 0 raqami bilan boshlanmasligi zarur. Javob sifatida shu sonni chiqaring. To`g`ri javob bir nechta bo`lsa, istalganini chiqaring. Agar buning iloji bo`lmasa "No valid permutation!" so`zini qo`shtirnoqlarsiz chiqaring.
Yagona qatorda ikkita butun son - \(X(1 \leq X \leq 10^{10})\) va \(K(1 \leq K \leq 10)\) kiritiladi.
Yagona qatorda masala javobini chiqaring.
Ikkinchi testda 106 sonini 2 xil usulda raqamlarini joyini o`zgartirish mumkin: 106 va 601. Ikkalasi ham 7 ga bo`linmagani uchun ham javob "No valid permutation!" bo`ladi.
Python tili uchun PyPy kompilyatoridan foydalanishni maslahat beramiz!
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
204423 4 |
202344 |
2 |
106 7 |
No valid permutation! |
3 |
126 9 |
126 |
F. Is it Fibonacci?
Xotira: 32 MB, Vaqt: 1000 msBarchasi juda oddiy. Uchta butun \(x,y,a\) sonlari beriladi.
\(f(n) = \begin{cases} x & n = 0 \\ y & n = 1 \\ f(n-1)+f(n-2) & n \ge 2 \end{cases}\)
bo`lsa, \(f(a)\) ni \(10^9+7\) ga bo`lgandagi qoldig`ini hisoblang.
Birinchi qatorda bitta butun son - \(T(1 \leq T \leq 2*10^5)\) testlar soni kiritiladi.
Har keyingi yangi qatorda, yangi test uchun - \(x,y(0 \leq x,y \leq 10^9)\) va \(a(0 \leq a \leq 2*10^5)\) sonlari kiritiladi.
Har bir test uchun yangi qatorda bittadan butun son, masala javobini chiqaring.
Python tili uchun PyPy kompilyatoridan foydalanishni maslahat beramiz!
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
11 3 5 2 1 1 6 6 7 1 1 1 12 7 4 5 5 6 9 3 2 0 1 1 40 2 2 19 19 75 6 976 85 12 |
8 13 7 233 41 309 3 165580141 13530 695 99104 |
G. EKUK interaktiv
Xotira: 16 MB, Vaqt: 1000 msKompyuter bir son o'yladi. Sizdan bu sonni topish so'raladi. Bunda faqat kompyuterdan bir narsani so'rashingiz mumkin. Kompyuterga bir son aytasiz kompyuter esa siz bergan son va o'zi o'ylagan sonlar EKUK(Eng Kichik Umumiy Karrali)ini aytadi. Ko'pi bilan 2 ta so'rovda kompyuter o'ylagan sonni toping.
Har bir so'rovga mos ravishda kompyuter javob qaytaradi. Bunda kompyuter o'ylagan son: \(1\le{N}\le10^{12}\)
Har bir so'rovni quyidagi formatda jo'natishingiz so'raladi. ″? X″ - bunda X ning qiymati \(2\le X \le 10\) shartni qanoatlantirishi kerak.
Javobni topganda esa ″! X″ ko'rinishida javob yo'llaysiz.
Har bir so'rovdan keyin qatorni tugatish yodingizdan ko'tarilmasin.
ESLATMA: Interaktiv masalada sizning javobingizni hakamlar hay’ati qabul qila olishi uchun siz har bir so’rovingiz oxirida
- Agar Pascal tilida ishlagan bo’lsangiz: flush(output)
- Agar C/C++ tilida ishlagan bo’lsangiz fflush(stdout) yoki cout.flush()
- Agar Java tilida ishlagan bo’lsangiz System.out.flush()
- Agar pythonda ishlagan bo’lsangiz sys.stdout.flush()
- Agar C# tilida ishlagan bo’lsangiz Console.Out.Flush()
Buyruqlardan birini yozishingiz kerak bo’ladi!
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
604 |
? 4 ! 302 |