chart из нулей и единиц: 1 — суша, 0 — вода. Островом называется группа клеток суши, связанных по сторонам (по горизонтали или вертикали; соседство по диагонали не считается). За пределами карты — вода.
Два острова имеют одинаковую форму, если один можно совместить с другим параллельным переносом — без поворотов и отражений.
Верните количество различных форм среди всех островов на карте.chart=[[1, 1, 0, 1, 1], [0, 0, 0, 0, 0], [1, 0, 0, 1, 1], [1, 0, 0, 0, 0]] → 2
Два горизонтальных отрезка из двух клеток — одной формы, вертикальный отрезок слева внизу — другой. Итого две формы.
chart=[[1, 0], [1, 1], [0, 0], [0, 1], [1, 1]] → 2
Оба острова — уголки из трёх клеток, но второй — зеркальное отражение первого. Отражения и повороты не допускаются, поэтому формы разные.
chart=[[0, 0], [0, 0]] → 0
chart.length, chart[i].length ≤ 50chart[i][j] — 0 или 1chart=[[1, 1, 0, 1, 1], [0, 0, 0, 0, 0], [1, 0, 0, 1, 1], [1, 0, 0, 0, 0]]
2
«Запустить» — первые 3 теста у тебя в браузере, «Отправить» — все 67 тестов на сервере, включая скрытые.