A. O'rnini almashtirish
Xotira: 32 MB, Vaqt: 1000 msSizga n ta son beriladi. Siz ularni birinchi va oxirgi indexlarini joyini almashtirib chiqarishingiz talab qilinadi.
Birinch qatordan n soni beriladi, (1<=n<=100)
ikkinchi qatorda n ta son kiritiladi.
Birinchi va oxirgi indexni o'rnini almashtirib, oxirgi natijani chiqaring.
Vectorning "swap" funksiyasini ishlating!
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
5 10 6 8 -1 8 |
8 6 8 -1 10 |
B. Ismimni top!
Xotira: 32 MB, Vaqt: 1000 ms7-"A" sinfining sinf rahbari o'quvchilarning topqirligini aniqlash uchun doskaga n ta o'quvchilarning ismlarini yozdi va istagan oralig'iga yangi ism qo'shib qo'ydi. So'ng, Bunyodni doskaga chiqarib quyidagi shartlarni bajarishini aytdi:
1. O'qituvchi ismlar ro'yxatiga kiritgan yangi ismni topish va uni o'chirib tashlash (agar kiritilgan yangi ism bilan bir xil ism ro'yxatda bor bo'lsa va undan oldinroqda tursa, birinchisi o'chirilsin)
2. Paydo bo'lgan ro'yxatdagi birinchi va oxirgi o'rindagi ismlarini joyini almashtirish.
Ushbu masalani yechishda Bunyodga yordam bering.
1-qatorda n ta ism (1<=n<=\(10^4\))
2-qatorda kiritiladigan k-o'rin va ism. (1<=k<=n)
Yangi qatorda ikkala shartni ham bajarib bo'lgandagi holatini chiqaring.
(Bu masalani vectorning erase(), empty() va size() funksiyalaridan foydalaning)
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
5 Vali Vali Umid Ulugbek Siroj 3 Vali |
Siroj Vali Umid Ulugbek Vali |
C. Javohirning Virusi
Xotira: 32 MB, Vaqt: 1000 msJavohir o'yinlarni yaxshi ko'radi. U bir kuni yangi o'yin yukladi. U yuklagan o'yin bilan birgalikda bir virus tushdi. Bu virus n kun ishlaydi. Virus kompyuter hotirasini kuniga k GB ga to'ldirib bormoqda. Buni ko'rgan Javohir antivirus yukladi. Antivirus shunday ishlaydiki kunlarda yig'lib qolgan keraksiz faillar 10GB dan oshsa uni o'chiradi. Agarda 10 GB ga yetmay qolsa anti virus ishlamaydi.
Sizning vazifangiz 10 GB ga yetmay qolgan kunlarni anlohida chiqaring.(5 9 1 6 7 8 2 3 2 4 bolsa 2 4)
kirish faylining ikki qator malumot kiritiladi birinchi qatorda 1<=n<=1000 kiritiladi kunlar soni. ikkinchi qatorda 1<=k<=\(10^5\) kuniga to'lib qoladigan xotira.
chiqish faylida qolgan kunlardagi qolib ketgan keraksiz xotiralarni chiqaring(har kungini alohida qilib chiqar)
vektorda ishlang
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
10 8 9 6 9 9 8 5 4 9 3 |
3 |
2 |
15 3 5 6 7 9 1 4 5 9 7 9 5 9 1 3 |
1 3 |
D. Oyna
Xotira: 32 MB, Vaqt: 1000 msJasur oyna orqali so'zlarni o'qimoqchi bo'ladi. U oynada so'zlar teskari ko'ringanligi tufayli ularni tartiblay olmaydi. Tartib quydagicha:
1)Agar so'zning bosh harfi alifbo tartibi bo'yicha oldinda bo'lsa, oldinga joylansin.
2)Agar bosh harfi bir xil bo'lsa, o'lchami kichigi oldinga joylansin.
Birinchi qatorda n soni va Ikkinchi qatorda n ta so'z kiritiladi. (1<=n<=\(10^{5}\))
Bir qatorda o'zgarishlardan keyingi holatni chiqaring.
Masalani vectorda ishlang.
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
5 amlo rijna kon sanana iheb |
anjir ananas behi nok olma |
2 |
3 abs abd bad |
dab dba sba |
E. O'quvchi qo'shish o'yini
Xotira: 32 MB, Vaqt: 1000 msMohinur sinfdagi n ta o'quvchining ismini ro'yxatga yozdi. k-o'ringa yangi o'quvchini joylashtirdi, so'ngra oxirgi o'quvchi ro'yxatdan chiqib ketadi. Sizning vazifangiz, Mohinurning o'yinining oxirgi natijasini ekranga chiqarish.
1-qatorda n ta ism, (2<=n<=\(10^{5}\))
2-qatorda k soni va yangi ism kiritiladi. (1<=k<=n)
Bir qatorda o'zgarishlardan keyingi o'quvchilarning ismlari chiqarilsin.
(Bu masalada C++ tilinig vector kutubxonasidagi insert(), pop_back() va at() funksiyalaridan foydalanilsin)
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
5 Farruh Ulugbek Jahongir Vali Aziz 3 Bobur |
Farruh Ulugbek Bobur Jahongir Vali |
F. Solihaning o'yinchoqlari
Xotira: 32 MB, Vaqt: 1000 msSoliha zerikkanida o'zini o'yinchoqlarini ikki turga ajratib chiqayotgan edi. Lekin tahlab bo'lganidan so'ng ikkinchi turning oxiridagi o'yinchog'i birinchi turga tegishli ekanligi sezib qoldi. Shuning uchun u o'sha o'yinchoqni olib birinchi qatorni oxirgi o'rniga qo'shib qo'ydi. Siz endigi ikki qator o'yinchoqlarni nomlarini chiqarishingiz kerak.
1- qatorda N soni(1<=N<=\(10^{5}\))
2- qatorda N ta o'yinchoqning nomlari
3- qatorda M soni(2<=M<=\(10^{5}\))
4- qatorda M ta o'yinchoqning nomlari
1- qatorda endigi birinchi qatordagi o'yinchoqlar qatorini ketma-ket chiqaring.
2- qatorda ikkinchi qatordagi qolgan o'yinchoqlar qatorini ketma-ket chiqaring.
(Bu masala C++ dasturlash tilida ishlanganda vector kutubxonasining "insert" va "pop_back" funksiyalaridan foydalaning.)
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
4 Mashina Vertolyot Velosiped Samolyot 3 Qozon Choynak Motosikl |
Mashina Vertolyot Velosiped Samolyot Motosikl Qozon Choynak |
2 |
3 Sher Yo'lbars Bo'ri 3 Mushuk Kuchuk Tulki |
Sher Yo'lbars Bo'ri Tulki Mushuk Kuchuk |
G. Imtihon
Xotira: 32 MB, Vaqt: 1000 msHammaga ma'lumki , barcha viloyatlarda Prezident , Ixtisoslashtirilgan , Ijod va Jasorat maktablariga tanlov bo'ladi.Unga ko'ra a nafar o'quvchi imtihon topshiradi , agentlik xodimlari esa ularni to'plagan ballari yordamida saralanadi . Maktabga b nafar o'quvchi kerak .
Sizning vazifangiz esa o'sha b nafar o'quvchini ID sini chiqarish
1-qatorda a (1<=a<=\(10^6\)) soni kiritiladi.
2-qatorda esa a nafar o'quvchining harfli ID si yonidan esa ballari kiritiladi.
3-qatorda b(1<=b<=\(10^6\)) soni kiritiladi
Eng yuqori ball to'plagan b nafar o'quvchining ID sini kamayish tartibida chiqarish.
Vectorda ishlang
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
5 absabs 55 def 71 repfps 44 cssgojust 76 pythoncppqwe 80 2 |
pythoncppqwe cssgojust |
2 |
10 frot 23 fserfrs 24 hukh 67 sdfvcx 34 ftuierh 23 pgspdfpcv 89 sdjfslgcuxt 234 sdafsvce 87 ryfghcgghdh 77 cfhbh 55 4 |
sdjfslgcuxt pgspdfpcv sdafsvce ryfghcgghdh |
H. Fast-food do'koni
Xotira: 32 MB, Vaqt: 1000 ms
Katta fast-food do'konida har doim mijoz juda ko'p va gavjum bo'ladi. U yerda har bir buyurtmaning o'z IDsi bor, ya'ni siz buyurtma berganingizdan so'ng sizni buyurtmangizga bitta ID tanlab olinadi va katta ekranda sizdan oldin buyurtma berganlardan so'ng paydo bo'ladi. Ammo ba'zi bir mijozlar juda shoshilayotgan bo'lishi mumkin va odam ko'pligi tufayli ular ketib qolishi mumkin. Va shunda ularning buyurtmasi katta ekrandan o'chib ketadi. Sizni vazifangiz ikkita xaridor ketib qolgandan so'ng, nechta xaridor qolganini va o'sha xaridorlarni IDsini chiqarish.
1- qatorda N soni (3<=N<=\(10^{5}\))
2- qatorda N ta ID (string formatda)
3- qatorda 2 ta chiqib ketgan xaridorlarning IDsi
1-qatorda ekranda nechta xaridor qolganligi.
Keyingi qatorlarda qolgan xaridorlarning IDlarini tak-matak chiqaring.
(Bu masala C++ dasturlash tilida yozilganda vector kutubxonasining "size" , "find" va "erase" funksiyalaridan foydalaning.)
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
5 D135 P85 D84 P957 D852 D135 P85 |
3 D84 P957 D852 |
2 |
7 P876 D45 D23 P765 D28 P345 D123 P765 D123 |
5 P876 D45 D23 D28 P345 |
I. Matematika musoboqasi
Xotira: 32 MB, Vaqt: 1000 msMatematika fanidan bir guruh o'quvchilarga dars beruvchi o'qituvchi o'zining o'quvchilariga kichik musoboqa o'tkazishga qaror qildi. Bu musoboqadan uning maqsadi o'quvchilarini ikki guruhga ajratish edi. Musoboqa yuz ballik sistemada baholanadi va o'quvchilar natijalariga qarab teng ikkiga bo'linadi. Agarda o'quvchilar soni toq bo'ladigan bo'lsa o'rtadagi o'quvchi birinchi guruhga o'tqiziladi. Sizga o'quvchilarning yuz balldan olgan ballari beriladi va siz ularni ikki guruhga ajratishingiz kerak bo'ladi.
1-qatorda N ta o'quvchi(1<=N<=\(10^{5}\))
2-qatorda N ta o'quvchining ko'rsatgan natijalari
1- qatorda birinchi guruh o'quvchilarining natijalari
2- qatorda ikkinchi guruh o'quvchilarining natijalari
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
6 98 76 75 86 92 99 |
92 98 99 75 76 86 |
2 |
5 67 91 80 75 59 |
75 80 91 59 67 |
3 |
10 85 49 96 77 59 87 63 41 99 80 |
80 85 87 96 99 41 49 59 63 77 |
4 |
11 54 78 95 43 90 65 51 71 58 73 82 |
71 73 78 82 90 95 43 51 54 58 65 |
J. Maxsus shifrlangan xabar
Xotira: 32 MB, Vaqt: 1000 msQadimgi Robolandiya saltanatida 2 josus bor edi. Ular boshqa davlat sirlarini bilish yoki ular haqida axborot to'plashi kerak. Lekin bu o'ta maxfiy sir bo'lishi kerak. Bu muammoni dono vazir RoboMan yechdi. U xabarlarni "+1" ko'rinishida shifrlashni taklif etdi. Bunda harf misol uchun "A" bo'lsa "B" qilib , "a" bo'lsa "b" qilib shifrlash kerak. Haqiqatdan u aqlli yechim edi. Lekin josuslar shartni uncha yaxshi tushunmagani uchun ular sizdan yordam so'ramoqda.
Eslatma: "z" harfi bo'lsa "a" , "Z" bo'lsa "A" qilib shifrlashi kerak.
Barcha belgilar bir qatorda probel bilan ajratilgan holda kiritiladi , misol uchun : "S a r d o r".
Chiquvchi ma'lumotda shifrlangan xabar.
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
Robocontest |
Spcpdpouftu |
2 |
Informatika |
Jpnsjubsj |
K. Kafedagi aksiya
Xotira: 32 MB, Vaqt: 1000 msYaqinda Ali Baba kafesi o'z mijozlari uchun chegirmalar e'lon qildi. Aksiya sharti quyidagicha edi:
- Mijozning raqamli ID si raqamlari ko'paytmasi 7 ga va 5 ga bo'linsa unga 70% chegirma
- Agarda mijozning raqamlari ko'paytmasi juft va 9 ga bo'linsa unga 50% chegirma
- Agar ko'paytma juft va oxirgi raqami 0 bo'lsa 25% chegirma
Sizdan talab etiladigan narsa bu S ta mijozning qanchadan chegirma olganini takma-tak chiqarish
//Agarda raqamli ID raqamlari ko'paytmasi bir necha holatga to'g'ri kelsa , eng yuqori chegirma olinsin.
1-qatorda S(1<=S<=\(10^5\)) soni
2-qatorda S ta a son (1<=a<=\(10^7\))
Chiquvchi ma'lumotda har bir mijozning olgan chegirmasi chiqarilsin
//Foiz ("%") belgisini chiqarmang.
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
5 1234 1235 1236 1175 5678 |
0 25 50 70 70 |
L. Musbat son
Xotira: 32 MB, Vaqt: 1000 msRobot uyda bir o'zi qoldi u hamma ishlarini bitirdi ammo u zerikishni boshladi
va u bir oyin oynamqochi bo'ldi unda n ta natural son kiritiladi va agar uning oxirigi manfiy bolsa u o'chiriladi bu holat to oxiri musbat bo'lmaganigacha davom etadi .
birinchi qatorda n natural soni. (4<=n<=\(10^{5}\))
ikkinchi qatorda n ta natural son
bir qatorda yakuniy royxatni chiqaring
Pop backda ishlang
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
5 1 2 -3 4 -5 |
1 2 -3 4 |
M. Oxirgi baho
Xotira: 32 MB, Vaqt: 1000 msUstoz darsda Davron 5 kun ichida matematika fanidan nechi baho olganini tekshirdi.
Davron 5-kuni nechi baho oldi ?
birinchi qatorga n soni kiritiladi (1<=n<=\(10^{5}\)), ikinchi qatorda n ta qiymati 100 dan oshmaydigan natural son kiritiladi
Davronning 5-kuni olgan bahosini chiqaring.
Vectorning "back" funksiyasini ishlating!
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
5 1 2 3 3 5 |
5 |
N. Saralashni yaxshi ko'ruvchi Boburxon
Xotira: 32 MB, Vaqt: 1000 msMatnda qaralganda n ta nom birga kelgandi. Boburjon saralashni yoqtiradi.U bu nomlarni saralamoqchi. U chat gpt ishlatmoqchi edi lekin o'quvchilarga shu savolni bermoqchi bo'ldi.
Birinchi qatorga n soni kiritiladi. (1<=n<=\(10^{5}\))
Ikkinchi qatorga stringda nomlar kiritiladi.
saralangan qatorni chiqaring.
# | INPUT.TXT | OUTPUT.TXT |
---|---|---|
1 |
5 Bobur Sardor Salim Jurabek Davlat |
Bobur Davlat Jurabek Salim Sardor |