Сүйікті оқушы
Спорттық бағдарламалау әлемінде әдетте екі форматтағы жарыстарды ажыратады: IOI (International Olympiad in Informatics) және ICPC (International Collegiate Programming Contest). Мысалы, «ЧРК» жарысы ICPC ережелері бойынша өткізіледі.
ICPC форматы:
Жарысқа бірнеше адамнан тұратын командалар қатысады.
Барлық есептер бірдей бағаланады (есеп не шешілген, не шешілмеген).
Мақсат — шектеулі уақыт ішінде барынша көп есепті шешу.
Шешілген есептердің саны бірдей болған жағдайда, жазасы (айып уақыты) аз команда жоғары орынға ие болады (дұрыс шешім үшін — контест басталған сәттен бастап саналған минуттар саны + әрбір қате жіберу үшін 20 минут айыппұл).
IOI форматы:
Әрбір қатысушы жеке өнер көрсетеді.
Әр есеп 100 баллмен бағаланады, жартылай шешімдер үшін аралық балл алуға болады (мысалы, 30, 70 балл және т.б.).
Қатысушының қорытынды нәтижесі — әр есеп бойынша алған ең жоғары (максималды) ұпайлардың жиынтығы (есепте барлық жіберілген шешімдер ішінен тек ең үздік нәтиже ескеріледі).
Жалпы ұпайлары тең болған қатысушылар сол орынды бөліседі.
Мысалы, бір оқу-жаттығу IOI-жарысына
Жойылған шешімдер қайта есептеу кезінде ескерілмейді.
Сіздің қорытынды ұпайыңыз кез келген өзге қатысушының ұпайынан кем болмас үшін, батырманы неше рет ең аз басу керек?
Енгізу
Бірінші жолда
Келесі
Шығару
Жалғыз санды шығарыңыз — сіз бірінші орынға шығу үшін ескермеуге (жоюға) қажет ең аз жіберілімдердің (посылок) санын көрсетіңіз.
Мысалдар
Енгізу 1
5 11
1 F 22
1 E 66
2 E 73
2 B 35
2 F 88
3 A 14
3 C 24
3 E 71
3 E 36
5 B 49
4 A 88
Жауап 1
3
Ескертпелер
Егер осылай жоюлардан кейін сізде және қарсыласыңызда тең ұпайлар қалатын болса, екеуіңіз де бірінші орынды бөлісесіздер, және бұл ресми түрде «жеңімпаз» болып саналу үшін жеткілікті.
Бірінші тесттік мысалда:
Пікірлер
from collections import defaultdict
def min_deletions_to_win(N, M, submissions, my_id):
Енгізу
N, M = map(int, input().split()) submissions = [input().split() for _ in range(M)] submissions = [(int(p), prob, int(s)) for p, prob, s in submissions] my_id = 1 # Сіздің қатысушы нөміріңіз
Жауапты шығару
print(min_deletions_to_win(N, M, submissions, my_id))