Новая Школа - онлайн-школа подготовки к ЕГЭ
При поддержке
Тренировки Пробники Статистика Карточки Учебник Об экзамене Учительская
  • Тренажёр заданий ЕГЭ
  • Тренажёр ЕГЭ по Информатике
  • Список заданий №26
  • Задание №26
  • Задание №74466 ЕГЭ Информатике

    Условие задания #74466

    №26 по КИМ

    В морском порту готовятся к перевозке грузов разной массы и формы, для этого каждый груз помещают в отдельный контейнер. Контейнеры имеют разную грузоподъемность (некоторые контейнеры могут иметь одинаковую грузоподъёмность). Из-за компьютерного сбоя из общего количества контейнеров для перевозки выделили первые попавшиеся контейнеры. Напишите программу, которая поможет посчитать максимальное количество грузов, которое можно отправить в выделенных контейнерах, и максимальную массу одного отправленного груза.

    Формат входных данных:

    В первой строке входного файла находится число N  — количество грузов, совпадающее с выделенным количеством контейнеров (натуральное число, не превышающее 20 000). Каждая из следующих N строк содержит два натуральных числа, не превышающих 100 000: массу груза и максимальную грузоподъёмность контейнера.

    Формат выходных данных:

    Два целых неотрицательных числа: максимальное количество грузов, которое можно отправить в выделенных контейнерах и максимальную массу одного отправленного груза.

    Входные данные.

     

    В первой строке входного файла находится число N  — количество грузов и количество контейнеров на складе (натуральное число, не превышающее 20 000). Каждая из следующих N строк содержит два натуральных числа, не превышающих 100 000: массу груза и максимальную массу груза, который можно поместить в контейнер.

    Выходные данные

    Два целых неотрицательных числа: максимальное число грузов и максимальную массу груза.

    Типовой пример организации входных данных:

    7

    10 50

    20 60

    70 20

    40 20

    50 10

    10 10

    20 15

    Для приведённого примера ответом является пара чисел: 6; 50.

    26_59822.txt

    Ответ

    Ответ:

    18456  99999

    Решение

    f = open("26_59822.txt")
    s = f.readlines()
    n = int(s[0])
    g = []
    k = []
    for i in range(1,n+1):
        a, b = map(int,s[i].split())
        g.append(a)
        k.append(b)
    g.sort(reverse=True)
    k.sort(reverse=True)
    i = 0
    j = 0
    maxg = 0
    while i < n:
        if g[i]<=k[j]:
            maxg = max(maxg, g[j])
            i += 1
            j += 1
        else:
            i += 1
    print(j,maxg)

    Понятно ли решение?

    Похожие задания

    15
    Задание №46720Задание №46721Задание №46752Задание №51424Задание №46719Задание №32183Задание №46642Задание №32179Задание №41214Задание №46643Задание №56108Задание №41209Задание №41208Задание №36692Задание №46645
    Бесплатно

    Решай задачи ЕГЭ в приложении

    Скачивай наш Тренажер ЕГЭ на iPhone или Android и тренируйся в любое время и в любом месте!

    Саша — ассистент в телеграмме