Форум программистов, компьютерный форум CyberForum.ru

"Замок" (на перебор с возвратом) - C++

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.89
SergeyM
0 / 0 / 0
Регистрация: 13.12.2010
Сообщений: 13
13.12.2010, 17:31     "Замок" (на перебор с возвратом) #1
Написать программу, которая определяет:
  1. количество комнат в замке;
  2. площадь наибольшей комнаты;
  3. какую стену в замке следует удалить, чтобы получить комнату наибольшей площади.


Замок условно разделен на M*N клеток (М<=50, N<=50). Каждая такая клетка может иметь от 0 до 4 стен.

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

План замка содержится во входном файле в виде последовательности чисел, по одному числу, характеризующему каждую клетку.
  • В начале файла расположено число клеток в направлении с севера на юг и число клеток в направлении с запада на восток.
  • В последующих строках каждая клетка описывается числом р (0<р<15). Это число является суммой следующих чисел: 1 (если клетка имеет западную стену), 2 (северную), 4 (восточную)-, 8 (южную). Внутренняя стена считается принадлежащей обеим клеткам. Например, южная стена в клетке (1,1) также является северной стеной в клетке (2,1).
  • Замок содержит по крайней мере две комнаты.
Пример файла исходных данных INPUT.txt для примера, изображенного на рисунке:

4
7
11 6 11 6 3 10 6
7 9 6 13 5 15 5
1 10 12 7 13 7 5
13 11 10 8 10 12 13

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

В выходном файле должны быть три строки. В первой строке содержится число комнат, во второй — площадь наибольшей комнаты (измеряется количеством клеток). Третья строка содержит три числа, определяющих удаляемую стену: номер строки, номер столбца клетки, содержащей удаляемую стену, и положение этой стены в клетке (N — север, W — запад, S — юг, Е — восток).

Пример выходного файла для рисунка:

5
9
4 1 Е

("4 1 Е " - один из возможных способов описания удаляемой стены)
Миниатюры
"Замок" (на перебор с возвратом)  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.12.2010, 17:31     "Замок" (на перебор с возвратом)
Посмотрите здесь:

Замените в слове "му" на "а", а букву "ы" на "ца". C++
C++ Замените буквы "а" и "о" в слове на "А" и "О".
C++ Функции.Перебор с возвратом
C++ Определить, сколько в строке символов "*", ":", ";"
C++ Необработанное исключение в "0x77913ab3" в "x": 0xC0000005: Нарушение прав доступа при чтении "0xdddddddd"
C++ Олимпиадная задача "Замок"
C++ Построчное чтение, с "возвратом" назад
C++ WinAPI "Copy", "Paste", "Delete" в контекстном меню
C++ Перебор/поиск с возвратом в графе
В чём разница между возвратом "string" и "const string&" & C++
C++ Переменные "емкость", "Галлон", "Бензин"
Классы "Фигура", "Прямоугольник", "Круг" C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 05:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru