A. Koordinatalar sistemasi

Xotira: 32 MB, Vaqt: 1000 ms
Masala

Ali, Vali va G'ani bir o'yin o'ynashga qaror qilishdi. Ularda 3 o'lchamli fazoda \(N\) ta nuqta mavjud. Ular mos ravishda X, Y va Z o'qlarini tanlashdi va o'sha nuqtalardan o'zlari tanlagan koordinata o'qlariga perpendikular chiziqlar tushurishadi. O'sha perpendikular chiziqlar tushgan nuqtalarni har bir ishtirokchi mos ravishda o'zi uchun yozib oladi. Agarda kimda eng ko'p turli nuqtalar hosil bo'lsa o'sha o'yinchi g'olib bo'ladi.

\(N\) ta nuqta koordinatalari beriladi o'yinda kim g'olib bo'lishini aniqlang.

Kiruvchi ma'lumotlar:

Birinchi qatorda \(N(1 \le N \le 100)\) natural soni beriladi.

Keyingi \(N\) qatorda 3 tadan butun son nuqtaning mos ravishda \(x, y, z(-100 \le x,y,z \le 100)\) koordinatalari beriladi. 

Chiquvchi ma'lumotlar:

O'yinda g'olib bo'lgan o'yinchilar ismini alohida qatorlarda chop eting. Agar ikki o'yinchida ham eng ko'p natija bo'lsa ikkalasi ham g'olib hisoblanadi. 

Misollar:
# INPUT.TXT OUTPUT.TXT
1
1
5 3 1
Ali
Vali
G'ani
2
4
-3 1 0
0 5 -3
-2 -2 1
3 3 -2
Ali
Vali
G'ani
3
5
-5 1 -1
-3 1 -4
-3 -1 3
-3 0 5
3 2 5
Vali
G'ani
4
3
-1 3 0
1 0 3
-2 -4 4
Ali
Vali
G'ani
5
3
-1 4 5
-3 -4 5
-2 -5 2
Ali
Vali

B. Tik Tak Toe

Xotira: 32 MB, Vaqt: 1000 ms
Masala

Tik Tak Toe o'yini barchaga ma'lum bo'lsa kerak.

Bizning o'yin esa biroz farq qiladi. Bunda o'yin bir chiziqda bo'ladi.

O'yin dastlabki holati sizga \(x\) va \(o\) lar holatida beriladi. Bunda \(x\) band joyni angalatadi. \(o\) esa bo'sh joyni anglatadi. Ikki o'yinchi navbati bilan eng birinchi kelgan bo'sh joylarni \(x\)bilan to'ldirishadi.

Kimda birinchi bo'lib 3 ta ketma-ket \(x\) hosil bo'lsa o'sha g'olib bo'ladi. 

Kiruvchi ma'lumotlar:

Bir qatorda o'yinni boshlang'ich holati beriladi. Uning uzunligi 100 dan oshmaydi. U faqat \(x\) va \(o\) lardan tashkil topgan.

Chiquvchi ma'lumotlar:

Chiqish faylida mos ravishda javoblarni chop eting:

  • “Birinchi” - Agar birinchi o'yincha g'alaba qozonsa
  • “Ikkinchi” - agar ikkinchi o'yinchi g'alaba qozonsa
  • “Hech kim” - agar hech kimni g'olib bo'lish imkoniyati bo'lmasa
Misollar:
# INPUT.TXT OUTPUT.TXT
1
xoxxxox
Birinchi
2
xxxxxxxx
Hech kim
3
xooxxxoo
Birinchi

C. DTM(UZBMB)

Xotira: 32 MB, Vaqt: 1000 ms
Masala

Barchamizga ma'lumki davlat oliygohlariga  kirish uchun kirish imtihonlari bo'lib o'tadi. Bu imtixonlar sobiq Davlat Test Markazi tomonidan olinadi. 

Barcha o'quvchilar qatori Sardor hozirda imtixonga tayyorlanmoqda. Imtixonga oz vaqt qolganda bilamizki ko'proq imtixon savollarini ishlash foydaliroq bo'ladi. Hozirda Sardor ham DTM ning telegram botidan foydalanmoqda. U bot sizga tushishi mumkin bo'lgan testlarni taqdim etadi va yakunda o'z javoblaringizni ham tekshirishingiz mumkin.

Buning uchun test kodi va javoblarizni jo'natishiz kerak bo'ladi.

Shundan so'ng bot sizga savollarga javoblarizni tekshirib qaysi savollarga to'g'ri yoki xato javob berganizni aytadi. Ammo noto'g'ri javob bergan savollarizda to'g'ri javob qaysi ekanligini aytmaydi.

Sardorning imtixoniga kam qoldi shu sababli u faqat savollarni javoblarini yodlamoqchi. Unga bunda yordam bering.

Kiruvchi ma'lumotlar:

Siz har bir so'rovingizga mos ravishda 0 va 1 lar ko'rinishida javob olasiz. Bunda 1 to'g'ri javobni 0 esa aksini anglatadi.

 

Chiquvchi ma'lumotlar:

Har bir so'rovni “? AABBCCDDAABBCCDDABCD” ko'rinishida berishingiz kerak bo'ladi. Unutmang abituriyentlar ko'pligi sababli ko'pi bilan botga 5 marta murojaat qilishingiz mumkin. Savollar soni 20 tani tashkil qiladi. Va faqat A,B,C,D variantlardan biri bo'lishi mumkin.

Javobni topgach esa “! AABBCCDDAABBCCDDABCD” ko'rinishida javob berishingiz kerak bo'ladi. Bunda barcha javoblar mos savollarning javoblari bo'lishi kerak.

Izoh:

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!

python:

print("ANSWER", flush=True)

cpp:

cout.flush();

 

 

Misollar:
# INPUT.TXT OUTPUT.TXT
1
10100001100000011100
11111111111111111111
? ABCDABCDABCDABCDABCD
? ACCBBCADADBCCABDABDC
! ACCBBCADADBCCABDABDC

D. Bo'lib tashla

Xotira: 32 MB, Vaqt: 1000 ms
Masala

Ma'lumki informatika fani o'qituvchilari matematikani ham yaxshi bilishlari talab qilinadi. Shunday qilib bir kuni informatika o'qituvchilari yig'ilib bir o'yin o'ynashga qaror qilishdi. U o'yinda 2 nafar ishtirokchi bo'lishadi va navbatma-navbat yurish qilishadi. 

 

O'yin sharti quyidagicha \(N\) natural soni tanlanadi va uning barcha bo'luvchilari doskaga yoziladi. Misol uchun 10 soni tanlansa: 1, 2, 5, 10. Ishtirokchilar birin-ketin sonlarni tanlashadi doskada son qolmaguncha. Tanlangan sonni tanlash mumkin emas.

 

Agar birinchi o'yinchi tanlagan sonlarning EKUB(Eng Katta Umumiy Bo'luvchi) i 1 dan farq qiluvchi ixtiyoriy son bo'lsa 1-ishtirokchi g'alaba qozonadi, aks holda esa 2-o'yinchi g'alaba qozonadi. 

 

Sizga \(N\) soni beriladi. Agar ikkala o'yinchi ham optimal o'ynasa, o'yinda kim g'alaba qozonganishini aniqlang.

Kiruvchi ma'lumotlar:

 Kirish faylida \(N(1\le N \le 10^{12})\) soni beriladi. 

Chiquvchi ma'lumotlar:

Agar birinchi o'yinchi g'alaba qozonsa “Y” aks holda “N” chop eting.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
10
Y
2
9
N
3
1
N

E. Permutatsiya

Xotira: 32 MB, Vaqt: 1000 ms
Masala

Permutatsiya deb 1 dan \(n\) gacha bo'lgan natural sonlarni tasodifiy tartibda joylashtirishdan hosil bo'lgan songa aytiladi.

Misol uchun:

4 3 5 2 1, 1 2 3 4 5, 2 4 5 3 1 → lar permutatsiya hisoblanadi.

3 2 2 , 1 1 2, 1 2 3 4 4 → bular permutatsiya hisoblanmaydi.

Alijonda bir permutatsiya bor edi ammo u ularni orasidagi bo'sh joylarni o'chirib ulkan son hosil qildi. Siz unga uning permutatsiyasini qaytarib bering. Uning permutatsiyasida dastlab kamida 1 ta ko'pi bilan 50 ta son bor edi.

Kiruvchi ma'lumotlar:

Yagona qatorda Alijon hosil qilgan ulkan son beriladi. 

Chiquvchi ma'lumotlar:

Uning permutatsiyasini orada bittadan bo'sh joy tashlash orqali chop eting.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
4111109876532
4 1 11 10 9 8 7 6 5 3 2
2
1
1
3
12
1 2
4
21
2 1
5
329846517
3 2 9 8 4 6 5 1 7
Kitob yaratilingan sana: 31-Oct-24 05:13