Давайте определим непустую, несортированную и конечную матрицу с уникальными числами следующим образом:
Давайте определим 4 перемещения матрицы как:
- ↑ * (вверх): перемещает столбец вверх
- ↓ * (вниз): перемещает столбец вниз
- → * (вправо): перемещение строки вправо
- ← * (влево): перемещение строки влево
Звездочка (*) обозначает столбец / строку, на которую влияет перемещение (может быть 0 или 1. На ваше усмотрение. Укажите, какой из них в вашем ответе).
Задача состоит в том, чтобы, используя вышеприведенные ходы, отсортировать матрицу в порядке возрастания (верхний левый угол - самый нижний, а нижний правый угол - самый высокий).
пример
Ввод:
Возможный вывод: или . (Обратите внимание, что любой из этих шагов может отсортировать матрицу, чтобы оба ответа были правильными)↑0
↓0
Ввод:
→0
Вход (пример теста):
↑0↑1←1↑2
Ввод:
↑0↑2→0→2↑0→2↑1↑2←1
Входные данные:
Возможные результаты:
↑2↑1←3→0←3↓0←0←2→3↑3↑4
Вход:
Выход:
или любой ход
Входные данные:
Выходные данные:
Примечания
- Могут быть разные правильные выходные данные (они не обязательно должны совпадать с тестовыми примерами или самыми короткими)
- Вы можете предположить, что это всегда будет способ заказать матрицу
- Соединяет края (как pacman: v)
- Не будет матрицы с более чем 9 столбцами и / или строками
- Предположим, матрица содержит только положительные ненулевые уникальные целые числа
- Вы можете использовать любые 4 различных значения, кроме чисел, для представления ходов (в этом случае, пожалуйста, укажите это в своем ответе)
- Столбец / строка могут быть 0 или 1 проиндексированы
- Критерии победы код-гольф
Дополнительные тестовые случаи всегда приветствуются
←0←0
допустимым решением для второго примера, где вы дали решение как →0
. Если это так, я думаю, что половина вариантов перемещения, скорее всего, не будет использована.