A. Increment decrement

Xotira: 10 MB, Vaqt: 1000 ms
Masala

C++ dasturlash tilida increment va decrement amallarini bajarilish tartibini bilsangiz kerak, agar bilmasangiz wikipediadan bilib olishingiz mumkun. Sizga \(X\) o'zgaruvchisiga nisbatan \(N\) marotaba bu ikki amaldan birini qo'llash tartibi beriladi. Sizning vazifangiz \(X\) ning oxirgi natijasini aniqlashdan iborat. Dastlab \(X\) ning qiymati \(0\) ga teng.

Kiruvchi ma'lumotlar:

Kirish faylining dastlabki satrida \(N(1\leq N\leq 100)\) soni. Keyingi \(N\) ta satrda "X++", "X--", "++X", "--X" lardan biri.

Chiquvchi ma'lumotlar:

Yagona qatorda masalaning javobini chop eting.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
1
++X
1
2
2
X++
--X
0

B. MMORPG GAME | LEVEL #1

Xotira: 10 MB, Vaqt: 1000 ms
Masala

Sardor ko'p vaqtini MMORPG GAME darajasidagi o'yinlarni o'ynash bilan o'tkazadi. U o'ynaydigan o'yinda keyingi level ga o'tish uchun u \(N\) ta ajdarni mag'lubiyatga uchratishi kerak bo'ladi. Sardor hozir LEVEL 1 da, Sardor va ajdarlarning kuchlilik darajalari butun sonlar bilan ifodalanadi. Sardorning kuchlilik darajasi ajdarning kuchlilik darajasidan katta bo'lsa Sardor g'alaba qozonadi. Dastlab Sardorning kuchi \(S\) ga teng.

Agar Sardor \(i-\) ajdar \((1\leq i\leq N)\) bilan janga kirsa va bu ajdarning \(x_i\) kuchidan uning kuchi katta bo'lmasa mag'lubiyatga uchraydi, aks holda g'alaba qozonadi va \(y_i\) bonusga ega bo'ladi.

Sardor istalgan ajdar bilan jang qilishi mumkun. Sizning vazifangiz Sardor o'yinning keyingi leveliga o'tib biladimi yo'qmi aniqlashdan iborat.

Kiruvchi ma'lumotlar:

Birinchi satrda bo'sh joy bilan ajratilgan ikkita \(S,N(1\leq S,N\leq 5000)\) son mos ravishda Sardorning kuchlilik darajasi va jami ajdarlar soni. Keyingi \(N\) ta satrda \(x,y(0\leq x,y\leq 10^4)\) butun sonlar mos ravishda ajdarning kuchlilik darajasi va ajdar ustidan g'alaba qozonilgandan so'ng beriladigan bonus.

Chiquvchi ma'lumotlar:

Chiqish faylida agar Sardor keyingi levelga o'tib bilsa, "YES", aks holda "NO" so'zini chop eting.

Izoh:

\(1-\)testda Sardorning kuchi dastlab \(2\) ga teng. Birinchi ajdarning kuchi \(2\) dan kichik bo'lgani uchun, Sardor ajdarni mag'lubiyatga uchratadi va bonusga ega bo'ladi va uning kuchi \(2+99=101\) ga ko'tariladi. Endi u ikkinchi ajdarni mag'lubiyatga uchratib keyingi levelga o'tishi mumkin.

\(2-\)testda Sardorning kuchi yagona ajdar kuchidan kichik bo'lganligi uchun jangda mag'lubiyatga uchraydi va u keyingi levelga o'tib bilmaydi.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
2 2
1 99
100 0
YES
2
10 1
100 100
NO

C. Karta o'yini

Xotira: 10 MB, Vaqt: 1000 ms
Masala

\(Bur\)-\(kaz-\)bu o'yinni ikki kishi jami \(36\) ta turli xil kartalar bilan o'ynaydi. 

Kartalar to'rt turga bo'linadi 'S', 'H', 'D' va 'C' ga(karta qaysi turga mansubligi). Kartalarni qiymatlari ham mavjud bular(o'sish tartibida) '6', '7', '8', '9', 'T', 'J', 'Q', 'K' va 'A'.

Dastlab o'yinda yerga zot karta sifatida istalgan bir turga tegishli karta ochiladi. Misol uchun 6S ochilgan bo'lsa barcha S turga tegishli kartalar zot hisoblanadi va qolgan uch turga tegishli kartalarning istalgan biridan S turga mansub karta katta hisoblanadi(agar turi bo'yicha teng bo'lsa qiymati bo'yicha solishtiriladi QS>JS, 8S>9H). Agar ikkala o'yinchining kartasi ham zot turiga mansub bo'lmasa va ularning kartalari turlari ham ikki xil bo'lsa \(1-\)o'yinchining kartasi katta hisoblanadi.

O'yin boshlanganda ikki o'yinchidan biri o'zidagi kartalardan birini yerga tashlaydi va ikkinchi o'yinchi o'zidagi kartalardan raqibi tashlagan kartadan kattaroq bo'lgan kartani tashlab yerdagi 2 ta kartani oladi va o'ziga achko yig'ib boradi. 

Sizning vazifangiz \(1-\)o'yinchi tashlagan kartadan \(2-\)o'yinchining tashlagan kartasi kattami tekshirish.

Kiruvchi ma'lumotlar:

Kirish faylining dastlabki satrida 'S', 'H', 'D' yoki 'C' yerga ochilgan zot qaysi turga mansubligi. Ikkinchi satrda \(1-\)o'yinchi va \(2-\)o'yinchi tashlagan kartalar probel bilan ajratilgan holda beriladi.

Chiquvchi ma'lumotlar:

Agar \(2-\)o'yinchi raqibining kartasidan katta karta tashlagan bo'lsa "YES", aks holda "NO" so'zini chop eting.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
H
KS KH
YES
2
S
6H 9H
YES
3
C
9S TH
NO

D. Qulupnayli tort

Xotira: 10 MB, Vaqt: 1000 ms
Masala

Malikaning tug'ilgan kuniga akasi \(n\times m\) o'lchamli tort olib keldi. Tortning ba'zi \(1\times 1\) katakchalari qizil qulupnay bilan bezatilgan edi. Misol uchun \(3\times 4\) o'lchamli tort rasimda tasvirlangan.

 sample-img

Malika bu tortni yeyishni istaydi! U \(1\times m\) yoki \(n\times 1\) o'lchamda kesib olmoqchi, ammo bu kesilgan qismida qulupnay bo'lishini istamaydi. Malika bunday o'lchamlarda tortni qirqib olib yeyishi mumkin bo'lsa, maksimal \(1\times 1\) o'lchamdagi tort bo'lakchalaridan nechtasini yeyishi mumkin bo'ladi.

Kiruvchi ma'lumotlar:

Kirish faylining dastlabki satrida \(n,m(1\leq n,m\leq50)\) tort o'lchami. Keyingi \(n\) ta satrda \(m\) tadan belgi tortni ifodalaydi.

  • '.' \(-\) nuqta qulupnay yo'q katakchani ifodalaydi;
  • 'X' \(-\) harf qulupnay bor katakchani ifodalaydi;
Chiquvchi ma'lumotlar:

Malika yeyishi mumkin bo'lgan maksimal \(1\times 1\) tort bo'lakchalari sonini chop eting.

Izoh:

\(1-\) testda Malika jami \(3\) xil usulda o'zi xohlagan o'lchamdagi tort bo'lagini kesib olishi mumkin (jami \(8\) ta \(1\times 1\) o'lchamli bo'lakchalarini yeyishi mumkin).

sample-img

Misollar:
# INPUT.TXT OUTPUT.TXT
1
3 4
X...
....
..X.
8

E. QR-kod

Xotira: 10 MB, Vaqt: 1000 ms
Masala

sample-img

Kiruvchi ma'lumotlar:

Kirish faylida ikkita \(x,y(0\leq x,y\leq28)\) butun son. 

Chiquvchi ma'lumotlar:

Yagona qatorda masalaning javobini chop eting.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
0 1
1
2
4 4
1
3
4 8
0

F. MMORPG GAME | LEVEL #2

Xotira: 10 MB, Vaqt: 1000 ms
Masala

Sardor ko'p vaqtini MMORPG GAME darajasidagi o'yinlarni o'ynash bilan o'tkazadi. U hozirda LEVEL 2 da o'ynashni davom etirmoqda. Endi Sardor level 2 da boshlari soni bir nechta bo'lgan ajdarlar bilan jang qilishi kerak. Sardor janga kirishidan oldin ajdarlarni umumiy kuchlilik darajasini aniqlamoqchi. Har bir ajdarning kuchi boshlari soniga teng, umumiy ajdarlarning kuchi esa barcha ajdarlarning boshlari sonlari ko'paytmasiga teng. Misol: \(3\) ta ajdar bo'lsa boshlari mos ravishda \(2,3,5\) teng bo'lsa ajdarlarning umumiy kuchi \(2*3*5=30\) ga teng. Sizga barcha ajdarlarning boshlari soni(yig'indisi) berilsa umumiy ajdarlarning kuchlilik darajasi bo'lishi mumkun bo'lgan maksimal qiymatini aniqlang.

Kiruvchi ma'lumotlar:

Kirish faylida yagona \(N(1\leq N\leq 100)\) natural soni barcha ajdarlarning boshlari soni.

Chiquvchi ma'lumotlar:

Chiqish faylida bo'lishi mumkun bo'lgan maksimal ajdarlarning umumiy kuchlilik darajasini chop eting.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
1
1
2
7
12
3
8
18

G. Qavslar

Xotira: 64 MB, Vaqt: 1000 ms
Masala

Qavslar soni \(n\) ta bo'lgan \(s\) satr(qavslar ketma-ketligi) to'g'ri hisoblanadi agar quyidagi ikki shart bajarilsa:

  • \(s\) satrda ochiluvchi va yopiluvchi qavslar soni teng bo'lsa;
  • \(s\) satrning istalgan prefiksida \(s[0...i](i<n)\) ochiluvchi qavslar soni yopiluvchi qavslar sonidan kam bo'lmasa. 

Sizga \(m\) ta qavsdan iborat \(s\) satr beriladi, sizning vazifangiz shunday \(r_i=p+s+q\) satrni topishdan iboratki, hosil bo'lgan \(r_i\) satrning uzunligi \(n\) ga teng bo'lsin va bu satr to'g'ri ketma-ketlikni tashkil qilsin. Bunday satrlardan jami nechta hosil qilish mumkin ekanligini hisoblang.

Kiruvchi ma'lumotlar:

Kirish faylining dastlabki satrida ikkita \(n,m(1\leq m\leq n\leq 10^5,m-n\leq2000)\) sonlar mos ravishda, hosil qilnishi kerak bo'lgan satr uzunligi va \(s\) satrdagi qavslar soni. Keyngi satrda \(s\) satr faqatgina '(' va ')' tashkil topgan ketma-ketlik.

Chiquvchi ma'lumotlar:

Yagona qatorda masalaning javobini \(10^9+7\) ga bo'lgandagi qoldiqni chop eting.

Izoh:

\(1-\)testda faqat \(4\) ta holatda hosil qilish mumkun

\(1.\) \(p="("\),  \(q="))"\)  \(p+s+q="(())"\) 

\(2.\) \(p="()"\),  \(q=")"\),  \(p+s+q="()()"\) 

\(3.\) \(p=""\),  \(q="())"\),  \(p+s+q="(())"\) 

\(4.\) \(p=""\),  \(q=")()"\),  \(p+s+q="()()"\) 


\(2-\)testda faqatgina 1 ta hosil qilish mumkun

\(1.\) \(p=""\),  \(q=""\),  \(p+s+q="(())"\) 


\(3-\)testda hech bir \(p\) va \(q\) satrlar orqali to'g'ri qavslardan tashkil topgan satrni hosil qilishning iloji yo'q.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
4 1
(
4
2
4 4
(())
1
3
3 2
((
0

H. Plus-Minus

Xotira: 65 MB, Vaqt: 1000 ms
Masala

Plus va minus bir birini yoqtirmaydi. Ular joylashgan qishloqda \(N\) ta(\(1\) dan \(N\) gacha raqamlangan) chorraha va bu chorrahalarni bog'lab turuvchi \(M\) ta bir xil uzunlikdagi ikki tomonlama harakat qiladigan yo'llar mavjud. Plus minus turgan chorrahaga, minus esa plus turgan chorrahaga borishni istaydi ammo ikkisi bir chorrahada uchrashib qolishni istamaydi (umumiy yo'lda qarama qarshi harakatlanishi mumkin 1-testga qarang). Ikkisi ham optimal harakat qilib plus \(N-\)chorrahaga, minus \(1-\)chorrahaga borishi kerak. Ularning tezliklari bir xil va doim harakatda qachonki ikkisi ham manziliga bir vaqtda yetib kelsa harakatni to'xtatadi. Dastlab plus \(1-\)chorrahada, minus esa \(N-\)chorrahada joylashgan.

Kiruvchi ma'lumotlar:

Kirish faylining dastlabki satrda \(N(2\leq N\leq200)\) va \(M(1\leq M\leq N(N-1)/2)\) ikkita natural son mos ravishda chorrahalar va yo'llar soni. Keyingi \(M\) ta satrda \(u, v(1\leq u,v\leq N)\)  \((u\neq v)\) chorrahalar o'rtasida yo'l mavjudligi. 

Chiquvchi ma'lumotlar:

Chiqish faylining birinchi satrda plus va minus ikkisi ham bir xil vaqtda manziliga yetib olguncha minimal tashrif buyurgan chorrahalar soni \(K\) va keyingi 2 ta satrda mos ravishda "P:" va "M:" belgilari va K tadan son ketma-ket tashrif buyurish chorrahalarni probel bilan ajratilgan holda chop eting (agar bunday yechimlar bir nechta bo'lsa istalganini, dastlab plusni harakatini keyingi satrda minusni harakatini chop eting). Agar ikkisi bir vaqtda manzilga borishning imkoni bo'lmasa "Infinite!" so'zini ni chop eting.

Izoh:

1-test: Plus va minus umumiy yo'lda qarama qarshi harakatda o'tib ketadi va ikkisixam bir vaqtda ma'nzilga yetib keladi.

2-test: Plus va minus hech qachon ma'nziliga yetib borishining imkoni bo'lmaydi.

3-test: Plus va minus ma'nziliga yetib borishi uchun harakati rasimda tasvirlangan(plus-yashil va minus-qizil rang bilan ifodalangan). 

sample-images

 

Misollar:
# INPUT.TXT OUTPUT.TXT
1
2 1
1 2
2
P: 1 2
M: 2 1
2
5 4
1 2
4 3
3 1
5 3
Infinite!
3
7 6
1 6
1 5
7 5
3 4
2 7
5 3
7
P: 1 5 3 4 3 5 7
M: 7 2 7 5 1 6 1
Kitob yaratilingan sana: 24-Nov-24 16:04