Ин масъалаҳо чиро машқ медиҳанд
- танзим кардани вектор, сатр ва вектори ҷуфтҳо бо
sort;
- танзим дар ҳарду самт ва ҳал кардани баробариҳо бо нимаи дуюми ҷуфт;
- зуд хондани вуруди калон: то 2 · 10⁶ адад.
Такрор (2 дақиқа)
- Баъд аз
vector<int> a = {3, 1, 2}; sort(a.begin(), a.end(), greater<int>()); a ба чӣ баробар аст?
- Ду ҷуфт
first-и якхела доранд. Чӣ ҳал мекунад, ки кадомаш хурд аст?
Ҷавоб
3 2 1. 2. Нимаҳои second.
Пеш аз оғоз
Дар баъзе вурудҳои ин ҷо 2 · 10⁶ адад ҳаст, ва қиматҳо то 10¹⁸ мерасанд. Ду сатри вуруди зудро дар аввали main нигоҳ доред, ба vector<long long> хонед ва бо "\n" ё фосила чоп кунед, ҳеҷ гоҳ бо endl не. Масъалае, ки як sort ҳал мекунад, барои соат мушкил нест, вале вуруди суст мушкил аст.
Пеш аз пешниҳод кардан ғояи худро дар ин ҷо санҷед. Лаборатория холӣ аст: барнома нависед ва «Иҷро»-ро пахш кунед.
Рамзи худро дар ин ҷо санҷедсанҷида бин!
Агар монед
Нишондодро танҳо вақте кушоед, ки ба он ниёз доред. Ду масъалаи аввал ба он ниёз надоранд.
3. Бо тартиби алифбо
Маслиҳати 1. Ҷавоб ҳарфҳои сатр бо тартиб аст.
Маслиҳати 2. sort бо сатр кор мекунад. s.begin() ва s.end() канорҳои он ҳастанд.
Маслиҳати 3. Сатр то 5 · 10⁶ ҳарф дорад: онро бо cin >> s хонед ва сатрҳои вуруди зудро нигоҳ доред.
4. Медиана
Маслиҳати 1. Аввал танзим кунед. Он гоҳ ҷавоб як ҷузъ аст.
Маслиҳати 2. Мавқеъ аз 1 ҳисоб мешавад. Массиви намунаро санҷед ва мавқеъро бо даст ёбед.
Маслиҳати 3. Индекси 0 ҷузъи аввал аст. Ҷойи p-ум, аз 1 ҳисоб карда, дар индекси p - 1 ҷойгир аст.
5. Хурдтарини k-ум
Маслиҳати 1. Аз хурд ба калон танзим кунед. Қиматҳои баробар мемонанд ва ҳисоб мешаванд.
Маслиҳати 2. Ҷавоб ҷузъи ҷойи k-ум аст, аз 1 ҳисоб карда.
Маслиҳати 3. Қиматҳо то 10¹⁸ мерасанд, бинобар ин long long-ро истифода баред.
6. Муттаҳид кардани ду рӯйхати танзимшуда
Маслиҳати 1. Ҷавоб ҳамаи ададҳои ҳарду рӯйхат дар як сатри танзимшуда аст.
Маслиҳати 2. Ҳарду рӯйхатро ба як вектор гузоред ва онро танзим кунед.
Маслиҳати 3. Қоидаи «аввал рӯйхати якум» танҳо барои ададҳои баробар муҳим аст, ва ададҳои баробар ҳангоми чоп якхела менамоянд.
7. Танзими зерсатрҳо
Маслиҳати 1. Барои ҳар дархост танҳо порчаи s[l..r] лозим аст.
Маслиҳати 2. Нусхаи порчаро созед: аз сатри холӣ оғоз кунед ва барои i аз l - 1 то r - 1 s[i]-ро илова кунед. Нусхаро танзим кунед ва чоп кунед.
Маслиҳати 3. Нусхаро танзим кунед ва худи s-ро ҳеҷ гоҳ не: дархости навбатӣ асл лозим дорад. Порчаҳо дар маҷмӯъ кӯтоҳанд, бинобар ин ин ба қадри кофӣ зуд аст.
8. Индексҳои тартибдодашуда
Маслиҳати 1. Адад набояд ҷойи худро дар вуруд гум кунад.
Маслиҳати 2. Ҷуфтҳои {value, index}-ро танзим кунед ва нимаҳои second-ро чоп кунед.
Маслиҳати 3. Қиматҳои баробар: аввал индекси хурдтар. Ҷуфт инро худаш мекунад.
9. Танзим ва ба ёд нигоҳ доштан
Маслиҳати 1. Ҳамон ҳилаи сафкашӣ, ки дар масъалаи пешина буд.
Маслиҳати 2. n то 3 · 10⁵: сатрҳои вуруди зудро нигоҳ доред.
Маслиҳати 3. 40 10 30 10-ро бо даст санҷед: ду даҳ тартиби худро нигоҳ медоранд.
11. Тартиб аз рӯи баландӣ
Маслиҳати 1. Нуқта аввал аз рӯи y ва дар сурати баробарӣ аз рӯи x танзим мешавад.
Маслиҳати 2. Ҳар нуқтаро ба {y, x} хонед, танзим кунед ва аввал second, баъд first-ро чоп кунед.
Маслиҳати 3. Нуқтаҳоро ҳамчун x y чоп кунед, дар ҳар сатр як нуқта.
12. Ҷадвали мусобиқа
Маслиҳати 1. Аввал масофаи калонтар, ва барои масофаҳои баробар id-и хурдтар.
Маслиҳати 2. Ҷуфтҳои {-distance, id}-ро танзим кунед. Масофаи дарозтар адади манфии хурдтар аст.
Маслиҳати 3. Танҳо id-ҳоро чоп кунед. Ду давандаро бо масофаи якхела санҷед.
13. Рейтинги иштирокчиён
Маслиҳати 1. Аввал холи калонтарин. Ҳар ном бояд бо холи худ якҷо равад.
Маслиҳати 2. Ҷуфтҳои {score, name} бо greater танзим шуда, ё {-score, name} ба тартиби муқаррарӣ.
Маслиҳати 3. Ҳамаи холҳо гуногунанд, бинобар ин номҳо ҳеҷ гоҳ ҳал намекунанд. Дар намуна бубинед, ки ҳар сатри баромад чӣ дорад.
Ҳанӯз монда истодаед?
- Санҷиши хурдеро бо дасти худ иҷро кунед.
- Дарс-ро аз нав хонед.
- Аз муаллим ё аз Ёвари ИИ пурсед, агар он ба шумо дастрас бошад.