Contest.samsu.ru :: соревнования по программированию
Русская версия || English version
Login:
Password:
Забыли пароль?
 пример поиска: Вася Пупкин
 

Задача B. Эмблема

Задачу добавил: alef

Успешно сдано решений: 418

Ограничение по времени на тест 2 секунды
Ограничение по памяти на тест 256 мегабайт

Царь Пантелеймон речи министров внимательно слушал. А после сказал, что появление бассейнов на имидж царства не повлияет, а вот вложения в спортивно-туристический комплекс большую отдачу дадут, и на бассейны хватит, и на многое другое.

Министр экономики Калистрат тут же добавил, что от спортивно-туристического комплекса отдача сразу пойдёт, ещё до завершения строительства. Можно разработать эмблему комплекса и продавать сувениры с этой эмблемой. К слову, уже имеется три отличных проекта эмблемы, можно бы рассмотреть и утвердить один.

Про каждого министра известно, как он относится к тому или иному проекту эмблемы. Будем обозначать символом «+» положительное отношение, символом «–» — отрицательное отношение, символом «0» — нейтральное отношение (во входных данных эти символы будут записаны без кавычек).

Из заслуживающих доверия источников Калистрат узнал, что один из проектов эмблемы сильно не нравится царю, и поэтому он хочет вынести на голосование только два других проекта эмблемы.

Процедура голосования состоит в том, чтобы каждый из министров назвал номер одного из двух предложенных проектов, который он поддерживает.

Каждый министр будет голосовать следующим образом:

  • если из двух предложенных проектов министр относится положительно только к одному, он назовёт номер именно этого проекта;
  • если из двух предложенных проектов министр относится к одному отрицательно, а к другому нейтрально, он назовёт номер того, к которому относится нейтрально;
  • если к обоим предложенным проектам министр относится положительно, он выберет проект, номер которого назовёт, случайным образом (т.е. может проголосовать как за один, так и за другой);
  • если к обоим предложенным проектам министр относится нейтрально, а к тому, который не был вынесен на голосование — отрицательно или нейтрально, он также выберет проект, номер которого назовёт, случайным образом (т.е. может проголосовать как за один, так и за другой);
  • если к обоим предложенным проектам министр относится нейтрально, а к тому, который не был вынесен на голосование — положительно, он откажется участвовать в голосовании.
  • если к обоим предложенным проектам министр относится отрицательно, а к тому, который не был вынесен на голосование — нейтрально или положительно, он откажется участвовать в голосовании;
  • если к обоим предложенным проектам министр относится отрицательно, и к тому, который не был вынесен на голосование, также относится отрицательно, то он может как отказаться от участия в голосовании, так и проголосовать за какой-либо из предложенных проектов. При этом выбирать, номер какого из проектов назвать, он будет случайным образом.

Калистрат хочет узнать, какое минимальное и какое максимальное количество голосов может набрать каждый из предложенных проектов. Ваша задача — вычислить это.

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

В первой строке содержится целое число n (1 ≤ n ≤ 1000) — количество министров.

Во второй строке содержатся два целых числа f и s  — номера проектов, которые вынесены на голосование.

В каждой из следующих n строк содержится по три символа (записанные без пробелов), обозначающие отношение очередного министра к 1, 2 и 3 проектам соответственно.

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

В первой строке выведите два целых числа minf и maxf через пробел — минимально возможное количество голосов, которое может быть подано за проект с номером f, и максимально возможное количество голосов, которое может быть подано за проект с номером f.

Во второй строке также выведите два целых числа mins и maxs через пробел — минимально возможное количество голосов, которое может быть подано за проект с номером s, и максимально возможное количество голосов, которое может быть подано за проект с номером s.

Система оценки

Подзадача 1 (до 30 баллов)

Нет ни одного министра, который бы относился ко всем трём проектам одинаково.

Баллы начисляются за каждый пройденный тест.

Подзадача 2 (до 70 баллов)

Ограничения, описанные в первой подзадаче, отсутствуют.

Баллы начисляются в случае успешного прохождения всех тестов группы.

По запросу сообщается результат проверки на каждом тесте.

Пример

Входные данные
7
3 2
0+0
-0+
+-+
0--
-00
-+-
++0

Выходные данные
2 3
3 4
Примечание

Поясним приведённый пример.

Как видим, из голосования исключен первый проект.

Министру #1 нравится проект #2, а к проекту #3 он относится нейтрально. Это значит, что он совершенно точно проголосует за проект #2.

Министр #2, напротив, питает симпатию к проекту #3, а к проекту #2 относится нейтрально. Поэтому он совершенно точно проголосует за проект #3.

Министру #3 приглянулись проекты #1 и #3. Возможно, он сожалеет о том, что проект #1 не попал в шорт-лист, но это не помешает ему без сомнений проголосовать за прокет #3.

Министр #4 нейтрально настроен лишь по отношению к проекту #1, а два других ему совсем не понравились. Поэтому он откажется голосовать.

Министр #5 нейтрально настроен к обоим вынесенным на голосование проектам, а вот первый проект ему совсем не понравился. Голосовать он не откажется, а вот какой из двух проектов выберет — сказать точно мы не можем.

Явный фаворит министра #6 — проект #2, остальные ему не понравились. Голосовать он будет именно за этот проект.

Наконец, министр #7 также не будет сомневаться, отдавая свой голос за проект #2: проект #1 ему тоже показался неплох, но выбирать-то приходится из #2 и #3, а проект #3 его не особенно впечатлил.

Таким образом, мы видим, что министры #1, #6 и #7 отдадут свой голос проекту #2, а министры #2 и #3 выберут проект #3. Это значит, что минимальное количество голосов, которое может получить проект #2, составляет 3, а проект #3 получит как минимум 2 голоса.

Министр #4 голосовать откажется, а вот голос министра #5 может быть отдан как проекту #2, так и проекту #3. Если он отдаст свой голос проекту #2, это будет наилучшая ситуация для проекта #2, поскольку он тогда наберёт 4 голоса (4 = 3 + 1). Если же он выберет проект #3, то это будет наилучшая ситуация для проекта #3: этот проект наберёт 3 голоса (3 = 2 + 1).

Сдать задачу

Задать вопрос жюри по этой задаче