A. Dasturchilar kuni #1
Xotira: 32 MB, Vaqt: 1000 msDasturchilar kuni munosabati bilan prezident maktabida bayram tashkillashtirildi va bayram nishonlanadigan joyga kafel yotqizishga qaror qilishdi. Maydon o'lchami n x m va kafel o'lchami esa a x a. Maydonni qoplash uchun nechta kafel kerak bo'lishini chop eting.
Bir qatorda n m a natural sonlari kiritiladi.
Agarda kafellarni umuman qirqmasdan maydonni to'liq qoplashni iloji bo'lsa Yes va nechta kafel sarflangani aks xolsa No va qancha maydon ortib qolgani.
Kafellarni qirqish mumkin emas deb hisoblansin.
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
4 8 4 |
Yes 2 |
2 |
2 18 4 |
No 36 |
B. Olimpiada #1
Xotira: 32 MB, Vaqt: 1000 msInformatikadan Olimpiada bolayotgan edi. Shohruzbek hozircha 2-o'rinda ketyapti ammo u 1 bo'lmoqchi. u 1-orindagi ishtirokchidan ancha orqada olimpiada tugashiga esa sanoqli daqiqalar qolmoqda. Agarda Shohruzbek eng oxirgi masalani ishlay olsagina 1-o'ringa chiqishi mumkim ammo u bunga qiynalyapti va sizdan yordam so'radi unga 1-o'rin bolishiga yordam berib yuborishingiz kerak. Masala sharti quyidagicha:
Sizga N soni beriladi siz shunday A massivni ekranga chiqarishingiz kerakki 2**ai lari yigindisi N ga teng bolsin lekin massiv elementlari takrorlanmasin.
N nomanfiy butun son kiritiladi.
So'ralgan massivni elementlarini o'sish tartibida chop eting agar iloji bolmasa -1 ni chop eting.
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
10 |
1 3 |
2 |
24 |
3 4 |
C. Pianina
Xotira: 32 MB, Vaqt: 1000 msOlim pianina chalishni yaxshi ko'radi. U bugun pianina chalmoqchi va uning pianinasi 100 ta klavishdan iborat. Sizga A massivda u bosishi kerak bolgan klavishlar berilgan. ular turgan joy quyidagicha tushuntirilgan:
masalan L50 degani chapdan 50 chi klavish R50 esa o'ngdan 50-klavish degan manoni bildiradi. u 2 qo'lida chaladi o'ng tarafga yaqinroq klavishlarni o'ng qo'lida chap tarafga yaqinroq klavishlarni esa chap qo'lida chaladi.
U birinchi barmoqlarini eng birinchi bosadigan klavishiga togirlab oladi shuning uchun boshida energiya ketmaydi keyingi harakatlarda u bosgan kavish va endi bosadigan klavish orasidagi masofagacha energiya sarflaydi.
ushbu masalada sizning vazifangiz Olim minimum necha energiya bilan pianinani chalib bo'lishini aniqlash.
Kirish faylida A massivi.
Masala javobini chop eting.
masalan A=[L23,R35,R49,L12,L38] bo'lsa:
o'ng tarafdan bosadigan klavishlarini korib chiqsak:
R35 R49 lar ong tarafdan bosiladi. ong tarafda sarflanadigan energiya 49-35=14 ga teng
chap tarafdan bosadigan klavishlar:
L23 L12 L38 bu xolatda minimum energiya sarflash uchun biz eng yaqinidan boshlaymiz bu ham bolsa L12:
L12 dan L23 ga L23 dan L38 ga o'tamiz va sarflanadigan energiya 23-12+38-23=26
endi umumiy energiya = 26+14=40 demak javob 40
Eslatma! R23 ni L78 deb olsa ham boladi chunki o'ngdan 23 chi klavishni chapdan 78 chi deb olsak ham boladi baribir ikkalasi ham bir manzilni bildiradi.
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
L23 R35 R49 L12 L38 |
40 |
2 |
L10 R28 |
0 |
D. Shifrlash
Xotira: 32 MB, Vaqt: 1000 msBilasiz qadim zamonlarda telefon bolmagan va bir biriga xabarni elchidan yuborishgan. Bir kuni bir Podshox sizga elchidan xat yubordi va elchi kimdirning qo'liga tushub qolsa xatdagi gaplar o'qib qolishlari mumkin edi shunga u yozgan gaplarini shifrlagan edi sizga xat yetib keldi ammo endi siz uni shifrdan ochishiz kerak Sizga quyidagilar malum:
B=13
E=3
S=5
O=0
I=1
ushbu shifrlash uslubidan foydalanib matnni deshifrlang
S satri kiritiladi
Masala javobini chop eting
Kodda replace, index, find, rfind, rindex , split, count va join funksiyasidan foydalanish taqiqlanadi
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
131TC01N |
BITCOIN |
2 |
A51L 130T |
ASIL BOT |
E. Base64
Xotira: 32 MB, Vaqt: 1000 msUshbu masalada siz berilgan satrni base64 tizimida kodlashingiz kerak.
Agarda siz base64 qanday ishlashini bilmasangiz quyidagi qo'llanma orqali o'rganishingiz mumkin:
Base64 kodlash tizimi quyidagicha ishlaydi:
- Siz berilgan satrdagi har bir shifrni ascii dagi o'rnini topib olasiz (Masalan
“Robocontest”
→[82, 111, 98, 111, 99, 111, 110, 116, 101, 115, 116]
) - Shundan keyin to'plamdagi har bir sonni binary tizimiga ya'ni ikkilik sanoq sistemasiga 8 talik qilib o'tkazishingiz kerak agar binary sonning o'lchami 8 ga yetmasa uning oldiga
0
larni qo'yib 8 ta qilib olasiz (Masalanbin(82) → 1010010
ushbu 2 lik sanoq sistemasidagi son 7 ta raqamdan tashkil topgani uchun oldiga 1 ta0
qo'yib 8 ta qilib olamiz:1010010
→01010010
. Natijada butun to'plam0101001001101111011000100110111101100011011011110110111001110100011001010111001101110100
holatiga keladi - Keyingi navbatda biz bu 1 va 0 lardan tashkil topgan satrni 6 tadan qilib bo'lib chiqamiz agar satrning o'lchami 6 ga bo'linmasa satrning ortiga 6 ga bo'linguncha
0
larni qo'shamiz (Masalan, satr01010010
bo'lsa, ortiga 4 ta0
qo'yamiz va010100100000
ni hosil qilamiz va uni 6 tadan 2 ta bo'lakka010100
va100000
qilib bo'lamiz. Bu usul bilan yuqoridagi satrni['010100', '100110', '111101', '100010', '011011', '110110', '001101', '101111', '011011', '100111', '010001', '100101', '011100', '110111', '010000']
shakliga keltiramiz) - Endi siz yuqoridagi to'plamni har bir qiymatini 10lik sanoq sistemasiga o'tkazasiz (Natijada yuqoridagi to'plam
[20, 38, 61, 34, 27, 54, 13, 47, 27, 39, 17, 37, 28, 55, 16]
holatiga keladi) Bu bosqichda siz
Base64 index table
dan foydalanasiz ya'ni yuqoridagi to'plamdagi har bir sonni quyidagi lug'at yordamida qayta satrga o'tkazasiz:Natijada
Um9ib2NvbnRlc3Q
satri kelib chiqadi- Oxirgi bosqich eng osoni. Har bir base64 tizimidagi satrning o'lchami 4 ga karrali bo'ladi, agar so'nggi natijaning o'lchami 4 ga karrali bo'lmasa u 4 ga karrali bo'lguncha oxiriga
=
belgisi qo'yiladi (MasalanUm9ib2NvbnRlc3Q
→Um9ib2NvbnRlc3Q=
) - Bo'ldi masala ishlandi endi sizning vazifangiz faqatgina yuqoridagi dostonni kompyuter tushunadigan tilga o'girish.
1 qatorda satr
Masala javobi
Qo'llanmani birma bir qo'lda yozib chiqdim agar imloviy yoki texnik xatoliklar yuzaga kelgan bo'lsa let me know.
Tayyor kutubxonalardan foydalanmang. O'zingiz ishlang!
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
Robocontest |
Um9ib2NvbnRlc3Q= |
2 |
Logic Contest |
TG9naWMgQ29udGVzdA== |