Задача "Морской бой" а так же небольшой флеш моб - QBasic
Формулировка задачи:
Условие:
Вася и Петя на уроке информатики играют в «морской бой». Вася уже разместил некоторое количество своих кораблей и теперь выбирает место для очередного корабля. Но сначала он хочет знать – сколько всего вариантов размещения этого корабля у него есть. Напишите программу, дающую ответ на этот вопрос.
Вход:
В первой строке входного файла записаны два целых числа H и W – размеры поля (1 <= H, W <= 100). В следующих H строках, содержащих по W символов каждая, представлено игровое поле с уже размещёнными кораблями. Свободные клетки обозначены символами “.” (точка), а клетки, занятые кораблями – символами “#”. В последней строке файла записано целое число K – размер корабля, который хочет разместить Вася (1 <= K <= 100).
Замечание
Вася и Петя играют в «продвинутый морской бой». В отличие от классического варианта в этой игре на игровом поле можно размещать любое количество кораблей любого размера, причём корабли могут касаться границ поля и друг друга. Но корабль размером K, так же, как в классическом варианте, есть вертикальный или горизонтальный прямоугольник размером K ? 1.
Выход:
Запишите в выходной файл количество различных вариантов размещения корабля.
Интересен больше алгоритм решение, чем сам код программы.
Флеш моб:
Карандаша выкладывала задачку про симметричную последовательность. Суть была такая, что нужно дописать символов к данным цифрам, что бы получился палиндром.
Алгоритм-
Возможны два случая, либо нужно дописывать это же число с самого его начала, при этом после каждого добавленного символа проверять полученный текст на *палиндромность*. Либо удалить все равные друг другу символы с конца и приписывать это же число но в обратном порядке. Как-то так. Проблема решения в том, что я не знаю как пользоваться оператором Function.
допустим функция проверки на *палиндромность.*как она будет выглядеть? и как ей пользоваться?Не, какое-то подобие я написал , вот только не знаю как добавить ее в основную программу и как дальше использовать.
Допустим
вот, после того как я набрал весь текст функции что нужно сделать, что бы добавить ее в программу? и как ее использовать.Правильный ли вообще алгоритм решения?
Нуждается скорее в обсуждении чем в коде с решением))
Решение задачи: «Задача "Морской бой" а так же небольшой флеш моб»
textual
Листинг программы
DECLARE FUNCTION polik (Q$)
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д