printРабочее место участника

printЗадачи

1522. Игра в 100

Ограничения: время – 500ms/1000ms, память – 64MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

Для получения дополнительного времени в сокровищнице команда должна сыграть с Мастерами Игры. Пете предстоит сыграть в следующую игру. В начале игры игроку выдаются шесть карточек с цифрами от 0 до 9. Игрок должен выбрать из них две пары карточек таким образом, чтобы сумма двузначных чисел, которые образует каждая из пар карточек, была как можно ближе к 100. Чем больше сумма чисел отличается от 100 (в большую или меньшую сторону), тем больше дополнительных секунд в сокровищнице потеряет команда. После каждого хода игрок получает четыре новые карточки к двум оставшимся от предыдущего хода, и снова должен сделать свой ход. Игра продолжается `N` ходов. Пете удалось узнать порядок карточек в стопке, из которой карточки выдаются игроку.
Напишите программу, которая определит какие пары карточек Петя должен выбирать на каждом ходе, чтобы минимизировать общую сумму отличий от 100 по всем ходам.
Первая строка ввода содержит одно целое число - количество ходов `N` (`1\ ≤\ N\ ≤\ 100`). Далее следует `N` строк, первая из которых содержит шесть целых чисел от 0 до 9, а остальные строки содержат четыре целых числа от 0 до 9 – цифры на карточках, которые получает игрок перед каждым ходом.
Вывести `N` строк, в каждой строке вывести две пары по две цифры – ход игрока. Если существует несколько решений, минимизирующих общую сумму отличий от 100, вывести одно из них (любое).

Пример ввода

2
2 0 2 3 7 5
9 2 2 8

Пример вывода

23 75
02 98
На первом ходе игрок получает из своих карточек сумму `23+75=98`, а на втором ходе – `02+98=100`. Общая сумма отличий от 100 равна `|100-98|+|100-100|=2`.
Решение, правильно работающее для `N\ =\ 1`, получит не менее 25 баллов.
loading