A. Alohida bo’luvchilar soni
Xotira: 16 MB, Vaqt: 1000 msSizga \(N\) ta elementdan iborat \(A\) to’plam hamda \(K\) soni berilgan, siz nechta natural son \(K\) sonining bo’luvchisi bo’lishi hamda \(A\) to’plamning hech bir elementi bo’luvchisi bo’lmasligini aniqlang.
Kirish faylining dastlabki satrida ikkita butun son, \(N (1 \le N \le 10^6)\) va \(K (1 \le K \le 10^{13})\) sonlari kiritiladi.
Ikkinchi satrda \(N\) ta butun son, \(A (1 \le A_i \le 10^{18})\) to’plam elementlari kiritiladi.
Chiqish faylida yagona butun son, masala javobini chop eting
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
8 16 2 5 7 4 3 8 3 18 |
1 |
B. Ekran klaviaturasi
Xotira: 16 MB, Vaqt: 1000 msZilola o’z klaviaturasini juda yomon ko’radi. Bunga sabab uning klaviaturasidagi harflar yozilgan tugmalar ishlamaydi. Agar u o’z kompyuterida biror so’z yozmoqchi bo’lsa ekran klaviaturasidan foydalanishga majbur bo’ladi. Albatta ekran klaviaturasidan ko’ra ko’proq oddiy klaviaturani ishlatish ancha qulayroq, shu sababli Zilola biror so’z yozmoqchi bo’lsa quyidagi ikki amallardan foydalanadi:
- Ekran klaviaturasi yordamida yozilish navbati kelgan belgini kiritishi mumkin, bu amal unga noqulaylik tug’diradi;
- Yozilgan satrning ixtiyoriy qism satrini belgilan nusxa olishi va satr oxiridan nusxani joylashi mumkin. Bu amal Zilolaga noqulaylik tug’dirmaydi
Zilola kamroq noqulaylik his qilish uchun ekran klaviaturasidan imkon qadar kamroq foydalanadi. Siz Zilola berilgan S satrni yozishi uchun Ekran klaviaturasidan eng kamida necha marta foydalanishi kerakligini aniqlang!
Kirish faylining dastlabki satrida bitta butun son, \(T (1 \le T \le 5)\) testlar soni kiritiladi.
Keyingi T ta satrda Zilola yozishi kerak bo’lgan so’z, S satr kiritiladi.
Har bir test uchun alohida qatorda S satrni yozish uchun Zilola ekran klaviaturasidan eng kamida necha marotaba foydalanishi kerakligini chop eting.
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
2 abcd abab |
4 2 |
C. Permutatsiya interactive
Xotira: 16 MB, Vaqt: 2000 msKompyuter 1 dan N gacha bo’lgan sonlarning ixtiyoriy permutatsiyasidan A massivni hosil qildi, bu massiv 1 dan boshlab indekslangan. Sizga dastlab N soni beriladi va sizning vazifangiz A to’plam elementlarini ketma-ketligini aniqlashdan iborat. Buning uchun siz kompyuterdan “? u v” shaklda so’rov so’rashingiz mumkin, bunda u va v massiv indekslari bo’lib kompyuter sizga A[u] va A[v] orasidagi ishorani ya’ni ‘>’, ‘<’, ‘=’ belgilardan birini aytadi. Siz bu ko’rinishdagi so’rovdan ko’pi bilan 16*N marotaba foydalanishingiz mumkin, va oxirida ‘!’ belgisidan so’ng massiv elementlar ketma-ketligini chop eting.
Kirish faylining dastlabki satrida bitta butun son, \(N (1 \le N \le 10^5)\) soni kiritiladi. Keyingi satrlarda sizning so’rovingizga mos holda ‘>’, ‘<’, ‘=’ belgilari chiqariladi.
Masala natijasini chop eting!
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!
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
5 = < < < < > = > > > > < = < < > < > = > > < > < = |
? 1 1 ? 1 2 ? 1 3 ? 1 4 ? 1 5 ? 2 1 ? 2 2 ? 2 3 ? 2 4 ? 2 5 ? 3 1 ? 3 2 ? 3 3 ? 3 4 ? 3 5 ? 4 1? ? 4 2 ? 4 3 ? 4 4 ? 4 5 ? 5 1 ? 5 2 ? 5 3 ? 5 4 ? 5 5 ! 1 5 2 4 3 |
D. Tic Tac Toe
Xotira: 16 MB, Vaqt: 1000 msTic Tac Toe qanday o’yin ekanligini barcha biladi. Shunday bo’lishiga qaramay yana bir eslatib o’tamiz:
- Bu o’yin 3x3 jadvalda o’ylanadi. Dastlab jadval bo’sh bo’ladi;
- O’yinni birinchi o’yinchi boshlab beradi va o’yin navbatma-navbat o’ynaladi;
- Birinchi o’yinchi o’z navbati kelganida jadvaldagi bo’sh kataklardan biriga X belgisini qo’yadi;
- Ikkinchi o’yinchi o’z navbati kelganida jadvaldagi bo’sh kataklardan biriga O belgisini qo’yadi;
- O’yin bir to’g’ri chiziq bo’ylab (3 ta qator, 3 ta ustun, 2 ta diagonal) 3 ta O yoki 3 ta X bo’lib qolguniga qadar yoki jadvalda bo’sh joy qolmaguncha davom etadi.
- Jadvalda ketma-ket 3 ta X bo’lsa X lar g’olib, ketma-ket 3 ta O bo’lsa O lar g’olib hisoblanadi.
Sizga o’yinning hozirgi holati berilgan. O’yin shu yerdan davom etganida birinchi o’yinchining yutish variantlar soni va ikkinchi o’yinchining yutish variantlar sonini chop eting. Natijaga erishish qadamlar ketma-ketligi farq qilganida ikkita natija har xil hisoblanadi.
Kirish faylining dastlabki satrida bitta butun son, \(T (1 \le T \le 10000)\) testlar soni kiritiladi.
Keyingi qatordan boshlab har bir test uchun alohida 3 ta qatorda Tic Tac Toe o’yini jadvalining holati beriladi. Jadvalning bo’sh elementlari nuqta(‘.’) bilan ifodalanadi. Testlar orasi bo’sh qator bilan ajratilgan
Chiqish faylida har bir test uchun alohida qatorda o’yinnig hozirgi holatidan keyin davom ettirilganda necha xil variantda X lar g’olib bo’lishi va necha xil variantda Y lar g’olib bo’lishini chop eting!
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
3 XX. .O. ... X.. .OX ... OOO X.X .X. |
191 194 232 200 0 1 |
E. Uchburchakli sonlar 4
Xotira: 16 MB, Vaqt: 1000 msUchburchakli sonlar teng tomonli uchburchakda joylashtirilgan jismlar sonidir (shu tariqa uchburchakli sonlar figurali sonlar turiga kiradi). N-chi uchburchakli son - bu yon tomonda n ta nuqta bo'lgan uchburchak tartibidagi nuqtalar soni va 1 dan n gacha bo'lgan n ta natural sonning yig'indisiga teng miqdorda nuqtadan iboratdir. Uchburchakli sonlar 1-tartibdan boshlanadi va dastlabki elementlari quyidagilardir:
1, 3, 6, 10, 15, 21, 28, 36, 45, 55, 66, 78, 91, 105, 120, 136, 153, 171, 190, 210, 231, 253, 276, 300, 325, 351, 378, 406, 435, 465, 496, 528, 561, 595, 630, 666...
Quyida 1 dan 6 gacha tartibdagi uchburchakli sonlar ifodalangan:
Sizning vazifangiz berilgan N sonini aynan 3 ta uchburchakli sonlar yig’indisi shaklida yozish mumkin yoki yo’qligini aniqlashdan iborat.
Kirish faylining dastlabki satrida bitta butun son, \(T(1 \le T \le 10^5)\) testlar soni kiritiladi.
Keyingi \(T\) ta satrda har bir test uchun bitta butun son \(N (1 \le N \le 10^{18})\) soni kiritiladi.
Chiqish faylining yagona satrida N ta butun son (orasida hech qanday ajratgichlarsiz), har bir test uchun agar N soni yuqoridagi shartni qanoatlantirsa 1 aks holda 0 sonini chop eting.
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
3 10 20 1000 |
101 |
F. Ikki massiv
Xotira: 16 MB, Vaqt: 1000 msBizda N ta elementdan iborat ikkita teng uzunlikdagi A va B massiv bor. Ikkala massiv ham natural sonlardan tashkil topgan. A massiv B massivdan leksikografik jihatdan katta ekanligi ma’lum. Biz sizga B massiv elementlarini hamda quyidagi shaklda M ta solishtirish natijasini aytamiz:
- \(u > v\) – bu \(A_u > A_v\) ni anglatadi
- \(u < v\) – bu esa \(A_u < A_v\) ni anglatadi
Sizning vazifangiz berilgan shartlarni qanoatlantiradigan leksikografik eng kichik bo’lgan A to’plamni topishdan iborat.
Kirish faylining dastlabki satrida bitta butun son, \(T(1 \le T \le 5)\) testlar soni kiritiladi.
So’ng har bir test uchun quyidagi shaklda ma’lumotlar kiritiladi:
Birinchi satrda \(N(1 \le N \le 10^5)\) va \(M (0 \le M \le 10^5)\) sonlari kiritiladi.
Ikkinchi satrda \(N\) ta butun son, B massiv elementlari kiritiladi.
Keyingi \(M\) ta qatorda \(U (1 \le U \le N)\), ishora (‘>’ yoki ‘<’), \(V (1 \le V \le N, U \ne V)\) kiritiladi.
Chiqish faylida har bir test uchun alohida qatorda YES yoki NO, ya’ni A massivni hosil qilib bo’lsa YES aks holda NO so’zini chop eting. Agar javobingiz YES bo’lsa keyingi qatorda A massiv elementlarini chop eting.
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
3 3 2 1 2 3 1 > 2 1 < 3 3 2 1 2 3 1 > 2 1 < 2 3 0 1 2 3 |
YES 2 1 3 NO YES 1 2 4 |
G. So’z o’yini
Xotira: 16 MB, Vaqt: 1000 msSiz uzunligi bir xil bo’lgan (ko’pi bilan 4 uzunlik) faqat ingliz alifbosining kichik harflaridan tashkil topgan N ta so’zni shunday chop etingk, unda hech bir so’z ikki marta qatnashmasin hamda 2 – so’zdan boshlab qolgan barcha so’zlar o’zidan oldingi so’z bilan faqatgina 1 ta harfga farq qilsin.
Kirish faylining dastlabki satrida bitta butun son, \(N (1 \le N \le 300000)\) soni kiritiladi.
Chiqish faylida masala shartini qanoatlantiradigan \(N\) ta so’zni har birini alohida qatorda chop eting.
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
5 |
aka ata ota ona ong |