ЗАДАЧИ
problems.ru |
О проекте
|
Об авторах
|
Справочник
Каталог по темам | по источникам | |
|
Версия для печати
Убрать все задачи
Петя и Вася нашли на чердаке остатки рыболовной сети своего деда. Часть веревок давно сгнила, и сеть распалась на большое число кусков, каждый из которых состоит не более чем из 50 веревочек единичной длины. Так как использовать по назначению остатки данной сети было уже нельзя, братья разложили один из найденных кусков на прямоугольном столе так, что веревочки оказались параллельны сторонам стола, и стали играть в следующую игру. Братья делают ходы по очереди, Петя ходит первым. Своим ходом игрок находит веревочку, являющуюся стороной некоторой целой единичной квадратной ячейки сети (все четыре образующие ее веревочки целы), и перерезает выбранную веревочку. Проигрывает тот из братьев, который не может сделать очередной ход. Требуется написать программу, которая по описанию куска сети на столе определяет, может ли Петя выиграть при любой игре Васи, и если да, то какой первый ход он должен для этого сделать. Формат входных данных В первой строке входного файла задано число N (1 ≤ N ≤ 50) - количество веревочек единичной длины, из которых состоит кусок сети. Следующие N строк входного файла содержат по две пары целых чисел - координаты концов веревочек. Каждая четверка чисел описывает отрезок единичной длины, параллельный одной из осей координат. Координаты всех точек неотрицательны и не превосходят 50. Формат выходных данных Первая строка выходного файла должна содержать число 1, если Петя может выиграть при любой игре Васи, и число 2, если нет. В случае выигрыша Пети вторая строка должна содержать номер веревочки, которую он должен перерезать первым ходом. Если возможных выигрышных ходов несколько, выведите любой. Веревочки пронумерованы, начиная с 1, в том порядке, в котором они заданы во входном файле. Примечание Максимальная оценка за решение задачи при N ≤ 13 равна 40 баллам. Пример
|
Страница: << 1 2 3 4 [Всего задач: 20]
Петя и Вася нашли на чердаке остатки рыболовной сети своего деда. Часть веревок давно сгнила, и сеть распалась на большое число кусков, каждый из которых состоит не более чем из 50 веревочек единичной длины. Так как использовать по назначению остатки данной сети было уже нельзя, братья разложили один из найденных кусков на прямоугольном столе так, что веревочки оказались параллельны сторонам стола, и стали играть в следующую игру. Братья делают ходы по очереди, Петя ходит первым. Своим ходом игрок находит веревочку, являющуюся стороной некоторой целой единичной квадратной ячейки сети (все четыре образующие ее веревочки целы), и перерезает выбранную веревочку. Проигрывает тот из братьев, который не может сделать очередной ход. Требуется написать программу, которая по описанию куска сети на столе определяет, может ли Петя выиграть при любой игре Васи, и если да, то какой первый ход он должен для этого сделать. Формат входных данных В первой строке входного файла задано число N (1 ≤ N ≤ 50) - количество веревочек единичной длины, из которых состоит кусок сети. Следующие N строк входного файла содержат по две пары целых чисел - координаты концов веревочек. Каждая четверка чисел описывает отрезок единичной длины, параллельный одной из осей координат. Координаты всех точек неотрицательны и не превосходят 50. Формат выходных данных Первая строка выходного файла должна содержать число 1, если Петя может выиграть при любой игре Васи, и число 2, если нет. В случае выигрыша Пети вторая строка должна содержать номер веревочки, которую он должен перерезать первым ходом. Если возможных выигрышных ходов несколько, выведите любой. Веревочки пронумерованы, начиная с 1, в том порядке, в котором они заданы во входном файле. Примечание Максимальная оценка за решение задачи при N ≤ 13 равна 40 баллам. Пример
Назовем пустотой последовательность пробелов между соседними словами в строке, а также от начала строки до первого слова в ней и от последнего слова в строке до конца строки. Проблема, стоящая перед жюри, состоит в том, что научный руководитель сборов Владимир Михайлович Кирюхин отказывается читать текст, если сумма кубов длин пустот по всем строкам не минимальна. Помогите жюри расположить отчет на листе бумаги так, чтобы В.М. Кирюхин согласился его прочесть и утвердить результаты сборов. Для достижения требуемого расположения текста на бумаге разрешается
заменять произвольную пробельную последовательность (т.е. непустую
последовательность подряд идущих пробелов и/или символов перевода строки)
любой другой пробельной последовательностью.
Входные данные: В первой строке входного файла записаны целые числа M и N (1 ≤ M, N ≤ 20). В каждой из последующих M строк содержится описание очередной строки таблицы. Описание состоит из целых чисел и арифметических формул, разделенных символами | (ASCII-код 124). Все числа принадлежат диапазону [-32768, 32767], а длина каждой формулы не превышает 100 символов. Выходные данные: Выведите в выходной файл значения всех ячеек таблицы. Значения ячеек каждой строки таблицы должны быть записаны через пробел в отдельной строке выходного файла. Все значения следует выводить с точностью до двух знаков после десятичной точки. Если значение ячейки вычислить невозможно, вместо него следует вывести символ - (ASCII-код 45). Пример входного файла 2 3 1 | {1, 1 }*10 +3 | -{1,2}/{2,2} {2,3} | 0 | {2,1} Пример выходного файла 1.00 13.00 - - 0.00 -
Имеются два шаблона. Требуется найти строку минимальной длины,
которая удовлетворяет обоим шаблона, либо выдать сообщение, что такой
строки не существует.
1) перестановки N-элементного множества (лексикографический порядок); 2) K-элементные подмножества N-элементного множества (лексикографический порядок); 3) разбиения N-элементного множества на K непустых подмножеств (лексикографический, т.е. алфавитный, порядок); 4) разбиения числа N на слагаемые; 5) правильные скобочные последовательности из 2N скобок; 6) двоичные деревья с N вершинами; 7) цепочки из нулей и единиц длины N без двух единиц подряд; 8) перестановки N-элементного множества (порядок, в котором соседние перестановки отличаются транспозицией соседних элементов); 9) K-элементные подмножества N-элементного множества (порядок, в котором соседние подмножества отличаются двумя элементами); 10) все подмножества N-элементного множества (порядок, в котором соседние подмножества отличаются добавлением или удалением одного элемента); 11) подвешенные деревья с N вершинами; решить следующие две подзадачи: найти общее количество объектов и породить M объектов, начиная с L-го; по заданным объектам получить их номера. В качестве N-элементного множества везде подразумевается множество {1, ..., N}. Там, где порядок порождения комбинаторных объектов не указан, Вы можете выбрать его по своему усмотрению. Нумерация объектов начинается с нуля. Таким образом, Вам предстоит написать 11 программ. Задача
засчитывается, если Ваша программа прошла все тесты, в противном случае
Страница: << 1 2 3 4 [Всего задач: 20] |
© 2004-...
МЦНМО
(о копирайте)
|
Пишите нам
|