A. Staklash #4
Xotira: 32 MB, Vaqt: 1000 msBu masala huddi Staklash#2 masalasining boshqacha varianti. Noob endi ITEM larni |S|S|S|S|S|S|X|”(S-to'liq stak, X-ortib qolgan stak) ko'rinishda staklashni o'rganib oldi, lekin u baribir bir narsa, bu itemlarni HOTBAR da qanday staklanishini bilmay qoldi. Hobarda ham narsalar 64x,16x,1x staklanadi, lekin uning staklanishi chegaralangan, staklanish joyi ko'pi bilan 9 ta bo'la oladi, endi siz Noobga N ta Logdan olingan Woodlarni Hotbarda staklab berishingiz kerak “|x|x|x|x|x|s| | | |(x - toliq stak, s - qoldiq stak, | | - esa bosh qism(Birorta Wood yoq joy, chiqarishda siz | | ortasiga 2 ta probel qo'yib chop etishingiz kerak))” ko'rinishida chop eting
64 | 64 | 64 | 64 | 23 |
---|
Kirish faylida N - Loglar soni kiritiladi.
Chiqish faylida siz N ta logdan olingan woodlarni “|x|x|x|x|x|s| | | |(x - toliq stak, s - qoldiq stak, | | - esa bosh qism(Birorta Wood yoq joy, “| |” orasida 2 ta probel bor))” ko'rinishida chop eting. Agar Stak 9 tadan oshib ketsa starni faqat 9 ta qismini chop eting.
Izoh uchun, masalan N 90 kiritildi deylik, javob “|64|64|64|64|64|40| | | |” chiqadi, sababi 90 * 4 = 360, 360 ni 64x staklasak jami stak 5, ortgan wood 40 bo'ladi, 40 ham 1 ta staklanish qismi bo'ladi, jami 6 ta staklanish joyi, Hotbarda esa 9 staklanish joyi bor, ya'ni 3 ta bosh qism, ular esa “| |” bo'ladi, javob esa “|64|64|64|64|64|40| | | |”. Agarda N = 150 bo'lsa “|64|64|64|64|64|64|64|64|64|” bo'ladi, 600 ta woodning jami staki 9 tadan ko'p bo'lgani uchun faqat 9 ta qismini oldik va u “|64|64|64|64|64|64|64|64|64|” ga teng.
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
50 |
|64|64|64|8| | | | | | |
2 |
120 |
|64|64|64|64|64|64|64|32| | |
3 |
0 |
| | | | | | | | | | |
B. Staklash #5
Xotira: 32 MB, Vaqt: 1000 msNoobda 3 xil turdagi Itemlar bor. Unda S1 turdagi Itemdan X ta, S2 turdagi Itemdan Y ta, S3 turdagi Itemdan Z ta bor. U Itemlar faqat 64x staklanmaydi, unda 16x va 1x staklanadiganlari ham bor, shunga xushyor bo'ling. Endi siz uni Itemlaridan foydalanib uning HOTTBARiga staklab beruvchi dastur tuzing.(Aniqroq bilish uchun testlarga qarang)
Kirish faylida 1 - qatorda X,Y,Z — Noobdagi Itemlar soni, qolgan 2-3-4-qatorlarda S1,S2,S3 — Noobdagi Itemlar kiritiladi. 64x,16x,1x ni bilish uchun Staklash #3 ga kiring.
Masalada so'zalgan javobni chop eting.
bu masalada 2 bir xil item ham hotbarda alohida staklanadi, 9 tadan ortganini chop etmay qo'ya vering,.
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
43 92 58 building block decoration block egg |
|43|64|28|16|16|16|10| | | |
2 |
6 82 78 arrow ender pearl snowball |
|6|16|16|16|16|16|2|16|16| |
3 |
78 6 46 pickaxe book building block |
|1|1|1|1|1|1|1|1|1| |
C. Staklash #6(HARD)
Xotira: 32 MB, Vaqt: 1000 msBu masala sizga qiyinchilik tug'dirishi mumkin, lekin ishlashingizga ishonaman. Minecraft o'yinida personaj o'zini qolda ushlab turadigan joy Hotbar, o'zini ichida olib yuradigan joy INVENTORY deb ataladi. Rasm esa mana.("CRAFTING"ga etibor bermang, eng pasida ajralib turgan 9x1 bu hotbar, Inventory 9x3 bu o'sha inventory, hotbar va inventory bir nom bilan INVENTORY deb ataladi.) staklanishda ITEMlar avval hotbarga, undan ortgani Inventoryga tartib bilan staklanadi(tepadan-pastga, aniqroq bilish uchun testlarga qarang!). Masala sharti doimgiday Log soni kiritiladi, Siz undan olingan Woodlarni quyidagi ma'lumotlar asosida INVENTORYga joylab berishighiz kerak. Qanday chop etish testlarda ko'rsatilgan.
Kirish faylida butun N soni (1≤N≤700) kiritiladi.
Chiqish faylida masalada so'ralgan javobni chop eting.
Agar Itemlar INVENTORYga sig'masa faqat inventoryga sig'adigan qismini chop eting(ya'ni to'liq xolat)
Wood 64x staklanadi.
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
453 |
|64|64|64|64|64|64|64|64|64| |64|64|64|64|64|64|64|64|64| |64|20| | | | | | | | ============================ |64|64|64|64|64|64|64|64|64| |
2 |
94 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ============================ |64|64|64|64|64|56| | | | |
3 |
375 |
|64|64|64|64|64|64|64|64|64| |64|64|64|64|64|28| | | | | | | | | | | | | | ============================ |64|64|64|64|64|64|64|64|64| |
D. NETHER PORTAL #2
Xotira: 32 MB, Vaqt: 1000 msBu masala NETHER PORTAL masalasiga unchalik ham o'xshamaydi. Steve netherite topish uchun netherga kirishi kerak, va u netherga kirishi uchun nether portalini yasashi kerak. Nether portalini yasash uchun ma'lum bir miqdorda Obsidian kerak bo'ladi. Steveda N ta Obsidian bor, u o'ylayaptiki undagi N ta obsidian portal yasashga yetadimikan-a?
Kirish faylida N Stevedagi obsidianlar soni kiritiladi.
Chiqish faylida agar obsidianlar portal qurishga yetsa YES, aks holda NO ni chop eting
Agar siz portal qurish uchun qancha obsidian kerakligini bilmasangiz bunga bosing!
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
1 |
NO |
2 |
40 |
YES |
3 |
7 |
NO |
4 |
20 |
YES |
5 |
9 |
NO |
E. Yer solig'i #1
Xotira: 32 MB, Vaqt: 1000 msBir odam minecraftda yashadi. U oz vaqt ichida boy bo'lib, o'ziga u qurib oldi. Ha aytgancha u DORYTA qishlog'ida yashaydi. U qishloqning meri o'sha odamga hasad qilib yer solig'ni ancha miqdorda ko'paytirdi. Mer u odamga qarab:
— Yer solig'i oshdi, seni uying A blokga B blok. Uyingning o'lchamlarining yuzi qancha bo'lsa, o'shanch emerald(minecraftdagi pul birligi) berasan — dedi mer. U odamning T ta emeraldi bor. Agar uning T ta emeraldi mer aytgan emeraldga yetsa qancha emerald ortib qolishi, agarda yetmasa “Not enought” ni chop eting.
Kirish faylida A, B va T butun sonlari kiritiladi.
Chiqish faylida masalada so'ralgan javobni chop eting.
Tushuntirish uchun masalan A=2, B=20 va T=740 bo'ldi deylik, uyining yuzasi 40 ga teng, ya'ni mer so'ragan pul 40 ta emerald, unda 740 ta emerald bo'lgani uchun uning puli yetadi,ortib qolgan puli esa 740 - 40 = 700, demak 700 ta, yoki A=18, B=17 va T=290 bo'lsa "Not enought" chiqariladi sababi yuzasi 306 yani mer aytgan pul 306, uning puli yetmaydi. Shuning uchun “Not enought”.
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
18 17 294 |
Not enought |
2 |
2 20 726 |
686 |
3 |
7 4 473 |
445 |
4 |
3 12 505 |
469 |
5 |
12 13 631 |
475 |
F. Yer solig'i #2
Xotira: 32 MB, Vaqt: 1000 msBir odam minecraftda yashadi. U oz vaqt ichida boy bo'lib, o'ziga u qurib oldi. Ha aytgancha u DORYTA qishlog'ida yashaydi. U qishloqning meri o'sha odamga hasad qilib yer solig'ni ancha miqdorda ko'paytirdi. Mer u odamga qarab:
— Yer solig'i oshdi, seni uying A blokga B blok. Uyingning o'lchamlarining yuzi ning atrofi qancha blok bo'lsa, o'shanch emerald(minecraftdagi pul birligi) berasan — dedi mer. U odamning T ta emeraldi bor. Agar uning T ta emeraldi mer aytgan emeraldga yetsa qancha emerald ortib qolishi, agarda yetmasa “Not enought” ni chop eting.
Kirish faylida A, B va T butun sonlari kiritiladi.
Chiqish faylida masalada so'ralgan javobni chop eting.
Masalan A = 5, B = 10, T = 30 bo'ldi deylik, uning uyini o'lchamini o'xshatishga xarakar qilaman:
■■■■■■■■■■
■ ■
■ ■
■ ■
■■■■■■■■■■
bular yuzani atrofini o'rab turgan bloklar, ular jami 26 ta, u odamning puli yetadi va 4 ta emerald ortib qoladi.
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
22 43 213 |
87 |
2 |
52 19 458 |
320 |
3 |
69 22 337 |
159 |
4 |
67 51 222 |
Not enought |
5 |
57 16 252 |
110 |
G. Stevening bloklari #1
Xotira: 32 MB, Vaqt: 1000 msSteve(Stiv)da 5 xil rangli bloklar bor “Qizil”, “Sariq”, “Yashil”, “Ko'k”, “Oq”. Steve bloklarni tartib bilan joylashtira boshladi, 1-Qizil, 2-Sariq, 3-Yashil, 4-Ko'k, 5-Oq, 6-Qizil, 7-Sariq … U n- bo'lib qaysi blokni qo'ygan?
Kirish faylida n(1≤n≤10000)
Chiqish faylida masalada soralgan javobni chop eting.
Steve bloklarni birin ketin qo'yadi
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
1 |
Qizil |
2 |
3 |
Yashil |
3 |
5 |
Oq |
4 |
6 |
Qizil |
5 |
7 |
Sariq |
H. Stevening bloklari #2
Xotira: 32 MB, Vaqt: 1000 msSteve(Stiv)da 5 xil rangli bloklar bor “Qizil”, “Sariq”, “Yashil”, “Ko'k”, “Oq”. Steve bloklarni ma'lum bir tartib bilan joylashtira boshladi, 1-Qizil, 2-Sariq, 3-Yashil, 4-Ko'k, 5-Oq, 6-Ko'k, 7-Yashil, 8-Sariq, 9-Qizil, 10-Sariq, 11-Yashil … U n- bo'lib qaysi blokni qo'ygan?
Kirish faylida n(1≤n≤10000)
Chiqish faylida masalada soralgan javobni chop eting.
Tartib ham juda oson…
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
1 |
Qizil |
2 |
3 |
Yashil |
3 |
5 |
Oq |
4 |
6 |
Ko'k |
5 |
12 |
Ko'k |
I. Uy qurish #1
Xotira: 32 MB, Vaqt: 1000 msBilamizki MINECRAFT o'yinida hamma uy qurishni yaxshi ko'radi, Shu o'rinda Steve ham. Steve hayolida X x Y x Z uyni tasavvur qildi va uni ichini to'ldirib qurib chiqishni o'yladi. Steve shu uyni qurish uchun Unga qancha blok kerak?
Kirish faylida X, Y, Z (3≤X, Y, Z ≤1000) — Steve o'ylagan uyning o'lchamlari kiritiladi.
Chiqish faylida Steve uy qurish uchun kerak bo'lgan bloklar soni.
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
5 10 6 |
300 |
2 |
3 3 5 |
45 |
3 |
10 10 10 |
1000 |
4 |
33 3 10 |
990 |
J. Uy qurish #2
Xotira: 32 MB, Vaqt: 1000 msBilamizki MINECRAFT o'yinida hamma uy qurishni yaxshi ko'radi, Shu o'rinda Steve ham. Steve hayolida X x Y x Z uyni tasavvur qildi va uni ichini to'ldirmay, faqat tashqi tomonini(ya'ni huddi qog'oz kubga o'xshab faqat ko'rinib turgan tomoni qog'oz bilan qoplangan xolos, ichi esa bo'shliq) qurib chiqishni o'yladi. Steve shu uyni qurish uchun Unga qancha blok kerak?
Kirish faylida X, Y, Z (3≤X, Y, Z ≤1000) — Steve o'ylagan uyning o'lchamlari kiritiladi.
Chiqish faylida Steve uy qurish uchun kerak bo'lgan bloklar soni.
Masalan 5 x 5 x 5 uyni ko'rib chiqaylik, pastki va yuqori joyini qurish uchun 2*(5*5)=50 ta kerak, old va orqa tomoni uchun 2*(5*(5-2))=30, o'ng va chap tomonini qurish uchun 2*((5-2)*(5-2))=18, jami 50+30+18=98
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
83 100 57 |
36510 |
2 |
99 15 90 |
22682 |
3 |
18 7 3 |
298 |
K. Gmail Account
Xotira: 32 MB, Vaqt: 1000 ms1 onlayn firibgar (xaker) Saidning kartasidan pullarini yechib oldi, lekin firibgar Saidning kimligini bilmas edi, Said — mohir dasturchi edi. Said firibgar onlayn sayt orqali pulini yechib olganini bildi va u saytdan u foydalangan Accountni topdi. Saidning baxtiga u accountiga o'zini ma'lumotlarini qo'ygan edi. O'sha firibgar accountiga ismini, familiyasini va tug'ilgan yilini yozgan ekan. U firibgar o'zbek odami, u accountiga yozgan son 4 xonali — tug'ilgan yilini yozgan bo'ladi. Ismi va familiyasini va mumkin bo'lsa tug'ilgan sanasini berilgan Gmail accountdan foydalanib chop eting.
Kirish faylida S satr firibgarning Gmail accounti kiritiladi.
Chiqish faylida firibgarning Ismi va familiyasini va mumkin bo'lsa tug'ilgan sanasini chop eting(aniqroq bilish uchun testlarga qarang)
Barcha ma'lumotlar orasida faqat “_” yo faqat “.” bo'ladi.
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
1972.Javohir.Jamolov@gmail.com |
ism : Javohir familiya : Jamolov tug'ilgan yili : 1972 |
2 |
1960.Anvar.Eshonqulov@gmail.com |
ism : Anvar familiya : Eshonqulov tug'ilgan yili : 1960 |
3 |
Umarov.1966.Komil@gmail.com |
ism : Komil familiya : Umarov tug'ilgan yili : 1966 |