На прямоугольном поле для игры в морской бой размером M×N расположено несколько прямоугольных кораблей. Корабли не соприкасаются друг с другом. Ваша задача — определить всевозможные типы кораблей на поле и число кораблей каждого типа. Два корабля относятся к одному типу, если их размеры совпадают (корабли, которые могут быть получены друг из друга поворотом, также относятся к одному типу). Входные данные Первая строка входных данных содержит два положительных числа M и N, не превосходящих 1000, задающие размеры поля. Далее идет M строк, каждая из которых состоит из N символов. Символ `1' означает, что соответствующая клетка поля занята кораблем, символ `0' — что свободна. Пробелов в строке нет. Выходные данные Программа должна для каждого обнаруженного типа корабля вывести одну строку, содержащую три числа. Первые два числа задают размеры корабля (первое число должно быть не меньше второго), третье число задает количество кораблей данного типа на поле. Строки в выводе должны быть отсортированы по первому числу, затем по второму числу. Пример входных данных 6 10 0111000011 0000011011 0100011000 0101011011 0100000000 0001111011 Пример выходных данных 1 1 1 2 1 2 2 2 2 3 1 2 3 2 1 4 1 1
Тип: Решение задач
Предмет: C/C++
Задача на С++ ввод из файлов input и вывод в output
Стоимость: 409,5 руб.
Эссе по истории — сложная учебная работа, в которой надо не только изложить позицию, но и показать знание выбранного периода.Это эссе — обязательная часть единого государственного экзамена по истории, также его часто задают на профильных факультетах университета. Если планируете , пришло время нау…
Читать дальшеДля сдачи диплома необходимо тщательно продумать тактику защиты, речь и поведение. И самой важной работой станет оформление титульного слайда презентации диплома.Существуют определенные требования к оформлению презентации дипломной работы. Следуя этим требованиям, можно облегчить визуальное воспр…
Читать дальше