ЗАДАЧИ
problems.ru
О проекте | Об авторах | Справочник
Каталог по темам | по источникам |
К задаче N

Проект МЦНМО
при участии
школы 57
Фильтр
Сложность с по   Класс с по  
Выбрана 1 задача
Версия для печати
Убрать все задачи

На ось Ox плоскости Oxy положили N прямоугольников. Требуется найти координаты вершин ломаной, огибающей это множество прямоугольников сверху (см. рис.).



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

Первая строка входного файла содержит целое число N (1 ≤ N ≤ 100). Далее следуют N строк, в каждой из которых записана тройка вещественных чисел, описывающих очередной из прямоугольников. Первое из них задает абсциссу левого нижнего угла прямоугольника, а остальные два – его длину и высоту.

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

В первую строку выходного файла выведите количество вершин искомой ломаной. Далее укажите сами вершины в порядке неубывания абсциссы. Каждая вершина задается своими координатами, записанными через пробел в отдельной строке выходного файла. Никакие два звена ломаной не должны лежать на одной прямой.

Пример входного файла

2
0 4 2
2 4 5

Пример выходного файла

6
0 0
0 2
2 2
2 5
6 5
6 0

   Решение

Задачи

Страница: << 12 13 14 15 16 17 18 >> [Всего задач: 145]      



Задача 102926

 [Ребус ]
Тема:   [ Перебор с отсечениями ]
Сложность: 3

Арифметический ребус – это зашифрованная запись сложения двух натуральных чисел (например, КОМП+КОМП=СБОРЫ). При этом одинаковым буквам должны соответствовать одинаковые цифры, разным – разные, и ни одно из чисел не может начинаться с нуля. Требуется написать программу, находящую все возможные решения такого ребуса. 

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

Входной файл содержит единственную строку с записью ребуса. Длина строки не превышает 30 символов.

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

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

Пример входного файла

ЛЕТО+ЛЕТО=ПОЛЕТ

Пример выходного файла

1
8947+8947=17894
Прислать комментарий     Решение


Задача 102930

 [Жизнь бактерий ]
Тема:   [ Задачи на полный перебор ]
Сложность: 3

Игра «Жизнь» является упрощенной моделью развития колонии бактерий. Игровое поле для этой игры представляет собой прямоугольник M × N клеток. В начальный момент времени в некоторых клетках находятся бактерии. За один шаг игры некоторые бактерии могут погибнуть, а некоторые родиться на свободных клетках в соответствии со следующими правилами: 
    1) бактерия, у которой есть не более одной соседки, погибает «от скуки»; 
    2) бактерия, у которой есть более трех соседок, погибает «от тесноты»; 
    3) на свободной клетке, у которой есть ровно три соседние бактерии, рождается новая бактерия.
Все эти правила применяются одновременно ко всем клеткам игрового поля. Клетки считаются соседними, если у них есть хотя бы одна общая точка. Напишите программу, которая: 
    по заданной колонии находит ее предка, то есть колонию, чьим следующим поколением она является, либо сообщает, что это невозможно;
    находит колонию, у которой нет предка, и которая погибает не ранее, чем через L шагов, либо сообщает, что такой колонии не существует.

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

Если во входном файле записана матрица M × N (2 ≤ M, N ≤ 15), то программа должна решать пункт 1 задачи для колонии бактерий, задаваемой этой матрицей. Бактерии обозначаются символом *, а пустые клетки – символом . (точка). Если во входном файле заданы три числа M, N и L (2 ≤ M, N ≤ 10, 0 ≤  L ≤ 10), то программа должна решать пункт 2 для этих параметров.

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

Если искомая колония существует, то ее следует вывести в выходной файл в формате, приведенном в описании входных данных к пункту 1. В противном случае ваша программа должна записать в выходной файл сообщение «NOT POSSIBLE».

Пример входного файла для пункта 1

...
***
...


Пример выходного файла для пункта 1

.*.
.*.
.*.


Пример входного файла для пункта 2

2 2 10

Пример выходного файла для пункта 2

*.
**

Прислать комментарий     Решение

Задача 102931

 [Сумма штрафа ]
Темы:   [ Векторы ]
[ Задачи в пространстве ]
Сложность: 3

Новый градоначальник города Глупова решил с целью пополнения бюджета и экономии горючего провести кампанию борьбы с левым уклоном и левыми рейсами. Для этого он запретил водителям выполнять левые повороты, установив штраф за каждый такой поворот в размере одного миллиона (разворот на 180o поворотом налево не считается). От тяжелого прошлого Глупову достались улицы, которые могут пересекаться под любыми углами. Градоначальник приказал установить компьютерную систему тотальной слежки, которая следит за каждым автомобилем, записывая его координаты каждый раз, когда тот меняет направление движения (включая начальную и конечную точки пути).

Требуется написать программу, вычисляющую по записанной последовательности координат автомобиля штраф, который должен быть взыскан с водителя.

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

В первой строке входного файла содержится целое число N – количество записанных пар координат (1 ≤ N ≤ 1000). В каждой из следующих N строк записана очередная из этих пар.

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

Выведите в выходной файл суммарный штраф водителя в миллионах.

Пример входного файла

4
0 0
1 0
1 1
2 1

Пример выходного файла

1
Прислать комментарий     Решение


Задача 102932

 [Торт для Жюри ]
Тема:   [ Площадь ]
Сложность: 3

K членов Жюри Десятой Всероссийской олимпиады школьников по информатике решили отметить столь круглую годовщину в одном из лучших ресторанов на Невском проспекте. На десерт вниманию Жюри предложили торт, имеющий форму прямоугольной призмы с выпуклым N-угольником в основании. Жюри вооружается десертными ножами и собирается справедливо разделить торт на K частей равного объема. Ножами можно проводить прямые вертикальные разрезы от одной границы торта до другой; различные разрезы могут иметь общие точки лишь в своих концевых вершинах.

Напишите программу, помогающую членам Жюри построить требуемые K-1 разрезов.

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

В первой строке входного файла содержатся два целых числа K и N (1 ≤ K, N ≤ 50). Далее следуют N пар вещественных чисел – координаты
последовательно расположенных вершин N-угольника.

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

Каждый из K-1 разрезов в выходном файле должен быть представлен четверкой чисел – координатами своих концов. Все числа должны быть разделены пробелами и/или символами перевода строки.

Пример входного файла

4 3
2 1
0 0.5
4 0.5

Пример выходного файла

2 1 1 0.5
2 1 2 0.5
2 1 3 0.5
Прислать комментарий     Решение


Задача 102933

 [Прямоугольники ]
Темы:   [ Вычислительная геометрия (прочее) ]
[ Очередь с приоритетами ]
Сложность: 3

На ось Ox плоскости Oxy положили N прямоугольников. Требуется найти координаты вершин ломаной, огибающей это множество прямоугольников сверху (см. рис.).



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

Первая строка входного файла содержит целое число N (1 ≤ N ≤ 100). Далее следуют N строк, в каждой из которых записана тройка вещественных чисел, описывающих очередной из прямоугольников. Первое из них задает абсциссу левого нижнего угла прямоугольника, а остальные два – его длину и высоту.

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

В первую строку выходного файла выведите количество вершин искомой ломаной. Далее укажите сами вершины в порядке неубывания абсциссы. Каждая вершина задается своими координатами, записанными через пробел в отдельной строке выходного файла. Никакие два звена ломаной не должны лежать на одной прямой.

Пример входного файла

2
0 4 2
2 4 5

Пример выходного файла

6
0 0
0 2
2 2
2 5
6 5
6 0
Прислать комментарий     Решение


Страница: << 12 13 14 15 16 17 18 >> [Всего задач: 145]      



© 2004-... МЦНМО (о копирайте)
Пишите нам

Проект осуществляется при поддержке Департамента образования г.Москвы и ФЦП "Кадры" .