A. Defis - bu chiziqcha

Xotira: 16 MB, Vaqt: 1000 ms
Masala

S matn yoki so'z beriladi. Sizning vazifangiz ushbu matndagi so'zlarni defis bilan ajratishingiz kerak. Matndagi so'z 10 belgidan oshsa so'zning o'rtasiga defis qo'yilgan holda ikkiga bo'lib, agar matndagi so'z 10 belgidan oshsa va belgilar soni toq bo'lib qolsa so'zining ikkinichi tomoniga ortiqcha bo'lib qolgan belgini qo'shib ikkiga bo'lingan holda chop eting.

Kiruvchi ma'lumotlar:

Kirish faylining bitta qatorida matn yoki so'z.

Chiquvchi ma'lumotlar:

Chiqish faylida masala javobini chop eting.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
Assalomu Alaykum Javohir
Assalomu-Alaykum-Javohir
2
Robocontest contest
Roboc-ontest-contest
3
Bilmasvoyta'tilda
Bilmasvo-yta'tilda

B. Ali va Vali

Xotira: 16 MB, Vaqt: 1000 ms
Masala

Bilmasvoy ukalari Ali va Valining yoshini esidan chiqarib qo'ydi. Ali Bilmasvoyga Validan N yoshga kattaligini aytdi. Lekin Bilmasvoy ukalarini yoshini topa olmadi. Keyin Vali Alidan K marta kichikligni aytdi. Bilamsvoy vanihoyat ukalarining yoshini topdi. Siz ham topingchi!?

Kiruvchi ma'lumotlar:

Kirish faylining bitta qatorida N va K natural sonlari, N( 0 < N < 109) va K(1 < K < 104) berilgan.

Chiquvchi ma'lumotlar:

Chiqish faylining yagona satrida birinchi Alining keyin Valining yoshini chop eting.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
48 7
56 8

C. Ajoyib Tenglama

Xotira: 16 MB, Vaqt: 1000 ms
Masala

″Men har doim matematikani yoqtirardim. Bu fikrni ifodalashning eng aniq va ixcham usulidir.″ - Narayana Murthy.

Matematika ajoyib fan, undagi tenglamalar esa uni go'zallashtirib turuvchi omillardan biri. 

Keling bir ajoyib tenglamani ko'rib chiqamiz : 
                                                  ax + by = c.

Sizga a, b, c musbat sonlari berilgan. Sizning vazifangiz x va y uchun butun sonlar mavjud yoki mavjud emasligini aniqlashingiz kerak. x va y musbat yoki manfiy bo'lishi mumkin.

Misol uchun a = 3, b=4, c = 10 bo'lsa biz x = 2 va y = 1 bo'la olishini bilishimiz mumkin. 

 

Kiruvchi ma'lumotlar:

Kirish faylining birinchi qatorida T\(\le\)1000 (Testcaselar soni)

Keyingi T ta qatorida 3 ta natural son a, b, c (1\(\le\)a, b, c \(\le\)\(10^{10}\)) berilgan.

Chiquvchi ma'lumotlar:

Chiqish faylida T ta qatorda agar yechimlar butun son bo'lsa ″Yes″ , agarda yechim mavjud bo'lmasa, ″No″ yozuvini chop eting.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
1
2 4 8
Yes

D. Virus

Xotira: 16 MB, Vaqt: 1000 ms
Masala

Viruslandiyada noma'lum virus tarqalishni boshladi. Bundan xabar topgan Shohruh tezlik bilan o'zini yotoqxonasiga qarab yo'lga chiqdi. Unda Viruslandiya online xaritasi mavjud. Qaysi kvartallarda virus tarqalganligini ko'rishi mumkin. Virus ham tezlik bilan tarqalmoqda. U har soatda o'ziga qo'shni bo'lgan kvartallarni qamrab oladi. Shohruh ham har soatda bir kvartaldan o'ziga qo'shni boshqasiga o'tishi mumkin. Viruslandiya xaritasi \(N \times M\) ko'rnishida.

Bunda Shohruh dastlab turgan kvartal S harfi bilan belgilangan.

Uning yotoqxonasi esa D harfi bilan belgilangan.

Virus aniqlangan hududlar esa yulduzcha(*) bilan belgilangan.

Shuningdek shaharda aholi yashamaydigan kvartallar mavjud bo'lib, u yerda virus tarqala olmaydi va Shohruh ham u yerdan yura olmaydi. U yerlar xaritada X bilan belgilangan.

Shohruh eng kamida necha soatda yotoqxonasiga yetib borishi mumkinligini chop eting. Agar u virus yuqtirib olsa shu zahoti u karantinga olinadi. Bunday holda ″Karantin″ so'zini chop eting.

Qo'shtirnoqsiz va har bir xarf katta kichik ixtiyoriy ko'rinishda.

Kiruvchi ma'lumotlar:

Kirish faylida birinchi qatorda N va M natural sonlari beriladi. Bunda ular 50 dan oshmaydi.

Keyingi N qatorda M tadan belgi kiritiladi. Mos ravishda:

S - Shohruh turgan boshlang'ich kvartal.

D - Shohruhning yotoqxonasi.

* - bular virus tarqalgan hududlar.

. - virus tarqalmagan aholi yashash punktlari.

X - aholi yashamaydigan hududlar

S va D nuqtalar yagona ekanligi kafolatlanadi.

Chiquvchi ma'lumotlar:

Chiqish faylida Shohruh eng kamida necha soatda borishini agar borolmasa Karantin so'zini chop eting.

Izoh:

Virus yotoqxonaga kira olmaydi.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
3 3
D.*
...
.S.
3
2
3 3
D.*
...
..S
KARANTIN
3
3 6
D...*.
.X.X..
....S.
6

E. Matritsaviy o'yin

Xotira: 256 MB, Vaqt: 1000 ms
Masala

Sizga 1,2,…,9 raqamlarini o'z ichiga olgan 3×3 matritsa beriladi. Sizning vazifangiz matritsani quyidagi holatga olib kelish :
                                                         1 2 3
                                                         4 5 6
                                                         7 8 9
Har bir amalda siz har qanday ikkita qo'shni  raqamlarni almashtirishingiz mumkin (gorizontal yoki vertikal). Berilgan vazifani bajarish uchun minimal holatda nechta amal bajarishingiz kerak?

Kiruvchi ma'lumotlar:

Kirish faylining uchta qatorida uchtadan raqam beriladi.

Chiquvchi ma'lumotlar:

Chiqish faylida minimal qadamlar sonini chop eting.

Izoh:

Bitta butun sonni chop eting: amallarning minimal soni.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
7 4 2
3 9 5
8 6 1
9
2
5 8 2
6 4 7
3 9 1
10

F. G'alati o'rmon

Xotira: 64 MB, Vaqt: 1000 ms
Masala

Bu interaktiv vazifa.

O'rmonchi Bilmasvoy daraxt kesmoqda. U daraxt kesayotgan o'rmon \(N*N\) katakdan tashkil topgan bo'lib, har bir katakda bittadan daraxt mavjud. U daraxtlarni \(5*5\) shaxmat doskasi ko'rinishda kesib chiqdi. Bu yerda har bir katak \(M*M\) maydondan iborat. To'liqroq tushunishingiz uchun quyidagi rasmga e'tibor bering:

Bu yerda qora maydonlar daraxt kesilgan joylar.

 O'rmonchi uyiga qaytayotib asbob-uskunalarini olishni unutib qo'ydi. Lekin uning ish qurollari rasmdagi qora nuqta - ya'ni shaxmat shaklida kesilgan daraxtlarning markazida joylashganini biladi. Bilmasvoyga anjomlarini topishga yordam beruvchi dastur tuzing.

Kiruvchi ma'lumotlar:

Kirish faylining birinchi qatorida uchta butun son N, x va y butun sonlari mavjud. \((1 \le N, x, y \le 2*10^9)\).

Bu yerda N kvadrat shaklidagi o'rmonning bir tomoni, x va y rasmda qora bilan belgilangan istalgan koordinatadan biri.

Siz dasturga quyidagicha ko'rinishda so'rov yuborishingiz mumkin:

\("? \ x \ y"\). Bu yerda x va y o'rmonning istalgan koordinatasi. So'rovga javoban siz so'ragan koordinatada daraxt kesilgan bo'lsa  ″true″, aks holda ″false″ ko'rinishida javob olasiz. Agar siz yuborgan koordinata mavjud bo'lmasa, dastur shu zahoti tugaydi va \("Presentation \ error"\) xatoligini olasiz.

Dasturga ko'pi bilan 150 ta so'rov yuborishingiz mumkin. Agarda so'rovlar soni oshib ketsa, dastur shu zahoti tugaydi va  \("Time \ limit"\) xatoligini qaytaradi.

Chiquvchi ma'lumotlar:

Javobni topganingizdan so'ng, \("! \ x \ y"\) ko'rinishida so'rov yuborishingiz va dasturni tugatishingiz zarur.

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!

Izoh:

       

Daraxtlar quyidagicha ko'rinishda kesilgan bo'lishi mumkin.

Unutmang, har doim M soni \(M \ge 3\)  bo'lgan toq sondir.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
20 4 9
false
true
true
? 2 9
? 9 14
? 11 9
! 10 9

G. A+B

Xotira: 16 MB, Vaqt: 1000 ms
Masala

A va B butun sonlari yig'indisini hisoblash kerak bo'ladi.

Kiruvchi ma'lumotlar:

Kirish oqimida ikkita butun son kiritiladi, sonlar 109dan kam

Chiquvchi ma'lumotlar:

Chiqish oqimida berilgan ikki sonni yig'indisini chiqarish kerak bo'ladi

Misollar:
# INPUT.TXT OUTPUT.TXT
1
2 3
5
Kitob yaratilingan sana: 25-Nov-24 12:02