A. Unlilar

Xotira: 32 MB, Vaqt: 1000 ms
Masala

(Stringning erase metodidan foydalaning)

Sizga kichik lotin harflaridan iborat satr beriladi. Siz quyidagi qoidalarga binoan satrni o‘zgartirishingiz kerak:

  1. Har bir unli harf (aeiou) o‘z o‘rnida keyingi unlini almashtiradi.
  2. Agar bu unli oxirgi unli bo‘lsa — u butunlay o‘chiriladi.
  3. Boshqa barcha belgilar o‘z joyida qoladi.
Kiruvchi ma'lumotlar:

Bitta qatorda matn beriladi.

Chiquvchi ma'lumotlar:

Bitta qatorda masalani javobini chiqaring.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
beautiful
bauitufl

B. Shakl yasash

Xotira: 32 MB, Vaqt: 1000 ms
Masala

Jasur dasturlashni endigina o‘rganayotgan maktab o‘quvchisi. U so‘nggi darslarda string mavzusini o‘zlashtirib, ayniqsa erase() funksiyasi bilan qiziqib qoldi. O‘qituvchisi unga mashq sifatida n × n o‘lchamdagi kvadrat matndan ma’lum bir shaklni ajratib olish vazifasini berdi.

Matn turli belgilar bilan to‘ldirilgan bo‘lsa-da, u yerda yashiringan bitta aniq shakl mavjud. Shakl — matnda eng ko‘p uchragan bitta belgidan tashkil topgan bo‘lib, qolgan belgilar keraksiz hisoblanadi.

Sizning vazifangiz — Jasurga yordam berib, ushbu shaklni ajratib olish. Buning uchun faqat kerakli belgilarni matnda qoldirib, qolgan belgilarni erase() funksiyasi yordamida olib tashlang. Har bir qatorda faqat kerakli belgilar qolishi kerak, boshqa belgilar yo‘q qilinadi. Agar qatorda kerakli belgi bo‘lmasa, satr butunlay bo‘sh bo‘lishi kerak.

Kiruvchi ma'lumotlar:

Birinchi qatorda bitta butun son n (3 ≤ n ≤ 100) — kvadrat matnning o‘lchami.

Keyingi n qatorda har birida n ta belgidan iborat matn beriladi.

Chiquvchi ma'lumotlar:

Chiqishda n ta qatordan iborat matn chiqaring. Agar qatorda kerakli belgi yo‘q bo‘lsa, satr butunlay bo‘sh bo‘lishi kerak.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
4
ab*c
a*c*
****
*acb
*
**
****
*

C. Kerakli so'zlar

Xotira: 32 MB, Vaqt: 1000 ms
Masala

(Masalada find, rfind, substr kabi algorithmlardan foydalaning)

Sizga bir dona matn (satr) beriladi. Ushbu matn ichida ba’zi so‘zlar shifrlangan bo‘lib, ular << va >> belgilar orasida yashiringan.

Sizning vazifangiz — ushbu matndan faqat to‘liq << va >> juftliklari orasida joylashgan yashirin so‘zlarni ajratib olib, har birini yangi qatordan chiqaring.

Kiruvchi ma'lumotlar:

Bir qatorda s(1<=s<=1000000) satr

Chiquvchi ma'lumotlar:

Shartga ko’ra so’ralgan natijani chiqaring. agar bunday natija topilmasa -1 chiqaring.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
adnjaufduifb <<asdhaadia>> adoadh
asdhaadia
2
qwie0qw9e <<adijidj<<dsaijd>>dajsdi ASdioijd <<asdjias>>
dsaijd
asdjias

D. Sub Palindrom

Xotira: 32 MB, Vaqt: 1000 ms
Masala

Sizga faqat a va b harflaridan tashkil topgan satr beriladi. Sizning vazifangiz — ushbu satr ichida joylashgan eng uzun palindrom bo‘lgan bo‘lakchani (substring) topish.

“Palindrom — chapdan o‘qiganda ham, o‘ngdan o‘qiganda ham bir xil bo‘lgan satr.

Masalan: "abba", "a", "babab" — palindrom, "ab", "baabx" — emas.”

Kiruvchi ma'lumotlar:

Bitta satr s, uzunligi 1 ≤ |s| ≤ 1000.
Satr faqat a va b harflaridan iborat bo‘ladi.

Chiquvchi ma'lumotlar:

Eng uzun palindrom substring (bir nechta bo‘lsa — birinchi uchragani).

Misollar:
# INPUT.TXT OUTPUT.TXT
1
abab
aba

E. Palindromlikni yo‘qotish!

Xotira: 32 MB, Vaqt: 1000 ms
Masala

Sizga faqat a va b harflaridan tashkil topgan satr beriladi. Sizning vazifangiz — ushbu satrga faqat a yoki b harflarini istalgan pozitsiyaga qo‘shish orqali, shunday yangi satr hosil qilish kerakki, uning hech qanday bo‘lagi (substringi) palindrom bo‘lmasin.

Palindrom deb orqadan o‘qilganda ham aynan o‘ziga teng bo‘lgan bo‘lakchaga aytiladi. Masalan: a, aa, aba, bab palindromlar hisoblanadi.

Siz satrga istalgan pozitsiyaga a yoki b harflarini qo‘shishingiz mumkin. Biroq, faqat a yoki b qo‘shishga ruxsat beriladi — boshqa harf yo‘q.

Sizdan quyidagilar talab qilinadi:

Eng kam qo‘shishlar soni bilan palindrom substringlar bo‘lmagan yangi satr hosil qiling va uni chiqaring!

Kiruvchi ma'lumotlar:

Yagona satr s (1 ≤ |s| ≤ 1000) — faqat a va b harflaridan iborat.

Chiquvchi ma'lumotlar:

Palindrom substringlari yo‘q qilinganidan keyingi yangi satr. Agar imkoni bo'lmasa -1 chiqaring.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
a
ab
2
ababababababababbbbababababababababababaabababa
-1

F. Eng birinchi noyob substring topish!

Xotira: 32 MB, Vaqt: 1000 ms
Masala

Sizga bitta satr s va butun son k beriladi. Sizning vazifangiz — ushbu satr ichidan uzunligi k bo‘lgan birinchi takrorlanmagan (noyob) substringni topish.

 

Ya’ni, s satridagi har bir ketma-ket k ta belgidan tashkil topgan substringlarni tekshirib chiqing va ularning ichida faqat bir marta uchraydigan eng birinchisini aniqlang.

Agar hech qanday noyob substring mavjud bo‘lmasa, "Not found" so‘zini chiqaring.

Kiruvchi ma'lumotlar:

Bitta satr s (1 ≤ |s| ≤ 10^4) — kichik lotin harflaridan iborat.
Bitta butun son k (1 ≤ k ≤ |s|)

Chiquvchi ma'lumotlar:

Shartga ko’ra so’ralgan natijani chiqaring

Misollar:
# INPUT.TXT OUTPUT.TXT
1
abcabcbb
3
bca

G. so‘zlarni ag'darib yozish

Xotira: 32 MB, Vaqt: 1000 ms
Masala

Sizga lotin harflari, bo‘sh joylar, tinish belgilaridan tashkil topgan bitta matnli satr beriladi. Matn ichida bir yoki bir nechta qavslar bo‘lishi mumkin. Har bir qavs juft bo‘lib, ochuvchi qavs ( va yopuvchi qavs ) dan tashkil topgan.

Sizning vazifangiz — ushbu satrni tahlil qilib, har bir ( ) ichidagi so‘zlarni teskari qilib yozish. Qavslar esa yakuniy natijada chiqmasligi kerak.

Kiruvchi ma'lumotlar:

Matn kichik va katta lotin harflari, raqamlar, bo‘sh joy, tinish belgilaridan iborat bo‘ladi. Har qanday ( ) qavslar har doim juft bo‘ladi va to‘g‘ri joylashgan bo‘ladi (( har doim ) dan oldin keladi).

Chiquvchi ma'lumotlar:

Matnni shartda aytilgan qismini o’zgartirib , qolgan qismlarni o’zgarishsiz to’liq chiqaring

Misollar:
# INPUT.TXT OUTPUT.TXT
1
dajhshwf (dhashdas)
dajhshwf sadhsahd

H. sana

Xotira: 32 MB, Vaqt: 1000 ms
Masala

YYYYMMDD — ishlab chiqarilgan sana (masalan, 20250704 — 2025 yil 4 iyul), YYYY - 0001 dan 2025 gacha MM - 01 dan 12 gacha, DD esa 01 dan 30 gacha bo'lsa to'gri sana hisoblanadi.

Sizga bitta sana beriladi. Siz uni string funksiyalaridan foydalanib quyidagi formatda chiqaring:

YYYY-MM-DD
Agar sana yiqoridagi formatda bo'lmasa, yoki notog'ri bo'lsa  "Invalid serial" deb chiqaring.

Kiruvchi ma'lumotlar:

Bitta qatorda sana kiritiladi.

Chiquvchi ma'lumotlar:

Bitta qatorda masalaning javobi chiqariladi

Misollar:
# INPUT.TXT OUTPUT.TXT
1
19960806
1996-08-06
2
1996806
Invalid serial
Kitob yaratilingan sana: 04-Aug-25 08:34