A. Fantastik to'rtlik

Xotira: 16 MB, Vaqt: 1000 ms
Masala

Kunlardan bir kun fantastik to'rtlikdagi qahramonlardan biri g'oyib bo'lib qoldi. Siz g'oyib bo'lgan 4-qahramonni topishingiz kerak. Bunda ularning har biriga 1 tadan butun son biriktirilgan va ular boshida tartiblangan holatda va har qaysi qo'shnilar orasidagi farq bir xil edi (arifmetik progressiya). Ammo hozir ular chalkash holda va ulardan biri g'oyib bo'lgan. O'sha g'oyib bo'lgan sonni toping. Agar bundan sonlar bir nechta bo'lishi mumkin bo'lsa ulardan istalganini chop etishingiz mumkin.

Kiruvchi ma'lumotlar:

Kirish faylida bir qatorda 3 ta butun son kiritiladi. Ularning absolyut qiymatlari 1000 dan oshmaydi.

Chiquvchi ma'lumotlar:

Chiqish faylida g'oyib bo'lgan sonni toping.

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

B. Hamma g'olib

Xotira: 16 MB, Vaqt: 1000 ms
Masala

Mashhur Robocontest tizimida \(n\) reyting o'ynaladi.  Reytingni taqsimlash quyidagi algoritm bo'yicha amalga oshiriladi: agar tadbirda k ishtirokchi ishtirok etsa, u holda n reyting ular orasida teng taqsimlanadi va faqatgina sonning butun qismi olinadi.  Tarqatish oxirida foydalanilmagan reyting qolishi mumkin - u ishtirokchilarning hech biriga hisoblanmaydi.

Masalan \(n=7\) va \(k=3\) holatnin ko'rib chiqaylik. Bunda har bir ishtirokchiga \(\lfloor7/3 \rfloor = 2\) reyting qo'shiladi. Qolgan 1 reyting hech kimga tegishli bo'lmaydi. Agar k=9 bo'ladigan bo'lsa, hech kim reyting olmaydi.

Shohruh ushbu reyting o'yinida ishtirok etadi, ammo ushbu contestda qatnashganlarning umumiy soni haqida ma'lumot yo'q.  Shuning uchun, u ushbu o'yin natijasida qanday turli xil reyting qiymatlari oshishi mumkinligini bilmoqchi va sizdan yordam so'ramoqda.

Masalan, agar \(n=5\) bo'lsa, biz kutgan javob \(0,1,2,5\) ketma-ketligiga teng bo'ladi.  Ketma-ketlikdagi qiymatlarning har biri  ba'zi mos musbat butun k uchun \(⌊n/k⌋\) ​​sifatida olinishi mumkin (bu erda \(⌊x⌋\) - x dan kichik yoki teng bo'lgan eng katta butun son): \(⌊5/ 7⌋=0,\ ⌊5/5 ⌋ = 1,\ ⌊5/2⌋ = 2, \ ⌊5/1⌋ = 5\).

Berilgan n boʻyicha barcha mumkin boʻlgan reyting oʻsishlar ketma-ketligini topadigan dastur yozing.

 

Kiruvchi ma'lumotlar:

Kirish faylining birinchi qatorida butun t \((1≤t≤10)\) - testlar soni mavjud.

Keyingi t qatorning har birida bittadan butun son - n mavjud \((1 \le n \le 10^9)\).

 

Chiquvchi ma'lumotlar:

Chiqish faylida har bir test uchun birinchi qatorda turli xil reyting o'zgarishlar sonini, keyingi qatorda esa shu sonlarni kamaymaydigan tartibda bo'sh joy bilan ajratilgan holatda chop eting.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
4
13
11
5
17
7
0 1 2 3 4 6 13 
6
0 1 2 3 5 11 
4
0 1 2 5 
8
0 1 2 3 4 5 8 17

C. Qoldiq o'yini

Xotira: 16 MB, Vaqt: 1000 ms
Masala

Bu interaktiv masala.

Shohruh kecha matematika darsida qoldiqlar mavzusini o'rganib oldi. Endi u ushbu mavzuni yanada chuqur o'zlashtirish maqsadida siz bilan o'yin o'ynamoqchi. Shohruh qog'ozga a sonini yozdi.  Siz Shohruhga x va y sonlarini aytasiz, Shohruh esa sizga quyidagi javobdan birini aytadi:

  • Agar \((x\ mod\ a) \ge (y\ mod\ a)\) bo'lsa \(x\);
  • Agar \((x\ mod\ a) < (y\ mod\ a)\) bo'lsa \(y\).

Bu yerda \((k\ mod\ a)\) k ning a ga bo'lingandagi qoldig'ini ifodalaydi.

Kiruvchi ma'lumotlar:

Hakamlar hayati bilan aloqa quyidagicha amalga oshiriladi:

\("?\ x\ y"\) - dasturga x va y sonlarini yuborish. Bunga javoban ″x″ yoki ″y″ ko'rinishida javob olasiz.

\("!\ a"\) javobni topganingizdan so'ng ushbu buyruqni dasturga yuborishingiz va dasturni shu zahoti to'xtatishingiz zarur. Aks holda ″Presentation error″ xatoligini olasiz.

Chiquvchi ma'lumotlar:

100 ta dan ko'p bo'lmagan so'rovlar yordamida javobni aniqlashingiz zarur.

Chegaralar: \((1 \le a \le 10^9, 1 \le x, y \le 2*10^9)\).

Misollar:
# INPUT.TXT OUTPUT.TXT
1
x
y
x
x
? 5 11
? 9 3
? 8 3
? 8 17
! 9

D. O'ta maxfiy parol

Xotira: 256 MB, Vaqt: 1000 ms
Masala

Bir noma'lum xaker keyingi contestda muammolarga duch kelmaslik uchun Robocontest test tizimining administrator parolini olmoqchi.  Buning uchun u administratorning kabinetiga yashirincha kirib, lotincha kichik harflardan iborat bo‘lgan n ta paroldan iborat bo‘lgan varaqni o‘g‘irladi.

Xaker uyiga qaytib, Robocontestni buzishga tayyorgarlik ko'ra boshladi.  U tizimda faqat oʻgʻirlangan roʻyxatdagi parollar borligini va tizim a va b parollarining ekvivalentligini quyidagicha tekshirishini aniqladi:

  • a parolda ham, b parolda ham uchrovchi biror bir x harfi mavjud bo'lsa, a va b parollari ekvivalentdir;
  • a va b parollar ekvivalent bo'ladi qachonki ro'yxatda shunday c parol bo'lsaki bunda u a ga ham b ga ham ekvivalent bo'lsa.

Agar tizimda parol o'rnatilgan bo'lsa va tizimga kirish uchun unga tenglashtirilgan parol qo'llanilsa, u holda foydalanuvchi tizimga kiradi.

Masalan, agar ro'yxatda ″i″, ″j″, ″ij″, ″k″ parollari bo'lsa, ″i″, ″j″, ″ij″ parollari bir-biriga ekvivalent, lekin ″k″ paroli ro'yxatdagi boshqa parollarga ekvivalent emas.  Boshqacha aytganda, agar:

  • admin paroli ″j″ bo'lsa, tizimga ushbu parollardan birortasi yordamida kirishingiz mumkin: ″i″, ″j″, ″ij″;
  • admin paroli ″k″ bo'lsa, tizimga faqat ″k″ dan foydalanib kirishingiz mumkin.

Ro'yxatdagi faqat bitta parol test tizimidagi administrator parolidir.  Tizimga kafolatlangan kirish uchun zarur bo'lgan minimal parollar sonini hisoblashda xakerga yordam bering.  Shuni yodda tutingki, xaker tizimda qaysi parol o'rnatilganligini bilmaydi.

Kiruvchi ma'lumotlar:

Kirish faylining birinchi qatorida \(n\ (1≤n≤2*10^5)\) butun soni mavjud - ro'yxatdagi parollar soni.  Keyingi n qatorda roʻyxatdagi parollar mavjud – boʻsh boʻlmagan \(s_i\) satrlari, uzunligi koʻpi bilan 50 ta harfdan iborat.  Ba'zi parollar o'zaro teng bo'lishi mumkin.

Barcha parollarning umumiy uzunligi \(10^6\) ta belgidan oshmasligi kafolatlanadi.  Ularning barchasi faqat kichik lotin harflaridan iborat.

Chiquvchi ma'lumotlar:

Bitta qatorda parollarning minimal sonini chop eting, ulardan foydalanish tizimga kafolatlangan kirish imkonini beradi.

Misollar:
# INPUT.TXT OUTPUT.TXT
1
3
ab
bc
abc
1
2
5
yyyyyyyyyyyyyyyyyyyyyyyyyyy
xxxxxx
zz
zzzzzzzzzzz
zzzzzzzzzz
3

E. Navbat

Xotira: 64 MB, Vaqt: 500 ms
Masala

Yaqin kunlarda Robocontest futbolkalari sotuvga chiqa boshladi. Futbolkalar omma orasida shunchalar mashxur bo'lib ketdi-ki, uzun qatorlarda navbatlar paydo bo'ldi. Endi ularni bir savol qiziqirib qo'ydi. Nechta turli juftliklar bir-birini to'g'ridan-to'g'ri ko'ra olishadi?

Bunda 2 kishi bir-birini ko'ra olishi uchun quyidagi holatlardan biri bo'lishi kerak:

    1) ular orasida hech kim bo'lmasligi kerak.

    2) ular orasida ularning hech biridan uzun inson bo'lmasligi kerak.

Bunday juftliklar nechta ekanligi aniqlovchi dastur tuzing.

Kiruvchi ma'lumotlar:

Kirish faylida birinchi qatorda 1 ta natural son \(N(1 \le N \le 500 000)\) navbatdagilar soni.

Keyingi N ta qatorda bittadan natural son mos ravishda navbatdagilarning bo'yi uzunliklari. Bunda ular \(2^{31}\) dan oshmaydi.

Chiquvchi ma'lumotlar:

Chiqish faylida bir-birini ko'rishi mumkin bo'lgan juftliklar sonini chop eting.

Izoh:

1-testda har bir yonma-yon turgan inson bir-birini ko'ra olishadi. Bunday juftliklar 6 ta.

Bundan tashqari juftliklar {4, 2}, {4, 2}, {4, 5}, {2, 5}

Misollar:
# INPUT.TXT OUTPUT.TXT
1
7
2
4
1
2
2
5
1
10
Kitob yaratilingan sana: 19-May-24 18:24