Соревнование
Учитывая 2d строку, представляющую дно лодки в качестве входных данных, вы должны определить, будет ли лодка плавать. Эта 2D-строка может быть в любом удобном для вас формате. (Строка с символами новой строки, списком строк, списком символов и т. Д.) Выведите истинное значение, если оно будет всплывать, и значение Falsey, если оно опустится.
Лодка опрокинется, если дно будет иметь непостоянную плотность, поэтому каждый символ должен быть одинаковым. Кроме того, если в лодке имеются большие отверстия, представленные пробелами, она утонет, поэтому в вашей лодке не должно быть отверстий с площадью больше 4. Вот пример:
########
# ####
########
# ## ##
# #####
########
Эта лодка действительна, потому что самая большая дыра в ней имеет площадь 4. Эта лодка:
########
########
# ##
# #####
########
является недопустимым, поскольку имеет отверстие с площадью 7. Можно с уверенностью предположить, что снаружи каждого входа будет сплошной прямоугольник без отверстий. Вот еще несколько тестов:
$$$$$$$$
***$$$$$
***$$$$$
***$$$$$
$$$$$$$$
Invalid density. Sink.
%%%%%%%%
% % %
%%%%% %
% % %
%%%%%%%%
None of the holes are larger than 4. Float.
OOOOOOOO
OOOOOOO
OOOOOOOO
OOOOOOOO
OOOOOOOO
The outside border is not solid. Undefined.
&&&&&&&&&&&&&
& & & & & & &
&& & & & & &&
& & & & & & &
&& & & & & &&
& & & & & & &
&&&&&&&&&&&&&
Although I would not be comfortable riding in this boat myself,
none of the holes are larger than 4. It floats.
@@@@@
@ @
@ @
@ @
@@@@@
It sinks.
правила
- IO может быть в любом разумном формате.
- Применяются стандартные лазейки.
- Кратчайший ответ в байтах побеждает.
- Данная строка будет полностью состоять из печатного ASCII.
источник
&
лодка существуетОтветы:
Matlab, 106 байт
Ввод представляет собой матрицу символов, например, для первого теста:
Объяснение:
источник