|
1 / 1 / 0
Регистрация: 05.04.2019
Сообщений: 110
|
||||||
Шахматный конь27.05.2019, 21:13. Показов 10470. Ответов 31
Добрый день
Нужно поправить код, но не знаю как. Такая задача: Одно движение шахматного прыгуна (лошади) - это прыжок на два поля вертикально или горизонтально, а затем на один квадрат под прямым углом. Такое движение создает букву «Л». Все поля, доступные одним движением перемычки, отмечены крестиком на диаграмме ниже. Рассмотрим неограниченную шахматную доску, на которой стоит несколько перемычек и на которой выделено одинаковое количество целевых полей. После выполнения определенного количества ходов (описанных выше) перемычки должны находиться на целевых полях. Как это сделать, выполнив минимальное количество ходов? Задача Напишите программу, которая для заданного распределения выходных N перемычек и N целевых полей найдет минимальное количество ходов, после которого перемычки окажутся на целевых полях. Входные данные В первой строке стандартного ввода содержится целое число D (1 ≤D ≤ 20), обозначающее количество наборов данных, размещенных в следующих строках. Каждый набор состоит из строки, содержащей количество N перемычек (1≤N≤ 1000), и из следующих 2N строк, содержащих координаты выходных полей перемычек (N строк), а затем расположение целевых полей (следующие N строк). Каждая из 2N строк, содержащих координаты поля (выходной или целевой), содержит две, разделенные одним пробелом целые числа x, y (-2000000000≤x, y ≤ 2 000 000 000), обозначающие номера столбца и строки, соответственно, на пересечении какого поля. Выходные данные Стандартный выходной файл должен содержать D задач для последующих наборов данных. Каждое решение должно быть записано в одну строку, в которой должно быть одно положительное целое число K - обозначающее минимальное количество движений, необходимое для перемещения всех перемычек из начальной позиции в целевую позицию. //4 //1 //5 5 //5 6 //2 //0 0 //1 0 //0 1 //1 1 //13 //4 1 //4 2 //3 3 //0 7 //4 3 //6 1 //3 5 //6 3 //5 4 //2 7 //3 7 //5 6 //7 5 //1 1 //3 0 //4 0 //1 4 //3 2 //0 7 //3 5 //7 3 //6 6 //7 5 //5 7 //7 6 //6 7 //15 //0 0 //0 1 //1 1 //2 0 //0 3 //3 3 //5 2 //7 0 //1 7 //3 6 //6 4 //7 4 //7 5 //6 7 //7 7 //1 1 //0 3 //4 0 //3 2 //2 3 //6 1 //0 7 //1 6 //3 5 //5 3 //4 4 //7 3 //4 7 //5 7 //7 7 правильный ответ: //3 //4 //18 //24 Полазил по Гуглу, по изучал информацию и получилось сделать только для стандартной доски 8х8(решил начать с простого и дойти со временем до решения). У меня не получается сделать неограниченную шахматную доску. А как сделать это что-то не придумаю? Если можете помочь, был бы очень благодарен вам) Вот мой код:
Ну очееень нужно)))
0
|
||||||
| 27.05.2019, 21:13 | |
|
Ответы с готовыми решениями:
31
Шахматная доска и шахматный конь Может ли шахматный конь перейти в указанную клетку доски? Проверить не угрожает ли данный шахматный конь заданному полю |
|
1 / 1 / 0
Регистрация: 05.04.2019
Сообщений: 110
|
|
| 27.05.2019, 22:42 [ТС] | |
|
Неа никак
даже не отвечает Добавлено через 4 минуты Для этих координат выдает результат 3, а должно быть 2 // исходные координаты Node src = { 0, 1 }; // координаты пункта назначения Node dest = { 1, 1 }; Для этих координат программа запускается и ничего не выдаёт Добавлено через 26 секунд // исходные координаты Node src = { 0, 0 }; // координаты пункта назначения Node dest = { 0, 1 }; Добавлено через 6 минут И как теперь быть?
0
|
|
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
||
| 27.05.2019, 22:44 | ||
|
Добавлено через 1 минуту Даже (x < (INT_MAX - row[i]))
0
|
||
|
1 / 1 / 0
Регистрация: 05.04.2019
Сообщений: 110
|
|
| 27.05.2019, 22:48 [ТС] | |
|
тоже самое
Добавлено через 1 минуту (x < (INT_MAX - row[i])) Для этого тоже самое Добавлено через 46 секунд Может нужно что-то прописать для координат 0;0 ?
0
|
|
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
|||
| 27.05.2019, 22:51 | |||
|
Добавлено через 1 минуту
0
|
|||
|
1 / 1 / 0
Регистрация: 05.04.2019
Сообщений: 110
|
|
| 27.05.2019, 22:51 [ТС] | |
|
А для n может что-то прописать?
0
|
|
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
||
| 27.05.2019, 22:53 | ||
|
На идея вроде правильная
Добавлено через 1 минуту Добавлено через 56 секунд Единственная разница, ты прибавить к нему ничего не можешь, будет переполнение
0
|
||
|
1 / 1 / 0
Регистрация: 05.04.2019
Сообщений: 110
|
|
| 27.05.2019, 22:56 [ТС] | |
|
Ясно
Добавлено через 49 секунд Попробую что-то сделать Добавлено через 1 минуту Всё равно спасибо
0
|
|
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
||||||||
| 27.05.2019, 23:07 | ||||||||
0
|
||||||||
|
1 / 1 / 0
Регистрация: 05.04.2019
Сообщений: 110
|
|
| 28.05.2019, 19:27 [ТС] | |
|
Показывает тот же результат, что и был из самого начала
0
|
|
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
|
| 28.05.2019, 19:30 | |
|
0
|
|
|
1 / 1 / 0
Регистрация: 05.04.2019
Сообщений: 110
|
|
| 28.05.2019, 19:37 [ТС] | |
|
Работает то правильно
Но должно быть во втором наборе ответ 4 для двух коней, а ответ получается 6(3 хода для одного коня и 3 хода для второго) Добавлено через 1 минуту Ходить должны как-то так: Расстановка для второго случая: Код: 3! 0 0 0 0 0 2! 0 0 0 0 0 1! 0 h 0 0 0 0! 0 h 0 0 0 -1! 0 0 0 0 0 -2! 0 0 0 0 0 ---------------- -1 0 2 3 4 Первый ход каждого коня: Код: 3! 0 0 0 0 0 2! 0 0 0 1 0 1! 0 h 0 0 0 0! 0 h 0 0 0 -1! 0 0 0 1 0 -2! 0 0 0 0 0 ---------------- -1 0 2 3 4 Второй ход каждого коня: Код: 3! 0 0 0 0 0 2! 0 0 0 1 0 1! 0 h 2 0 0 0! 0 h 2 0 0 -1! 0 0 0 1 0 -2! 0 0 0 0 0 ---------------- -1 0 2 3 4 Итого - 4 хода. Вход //2 //0 0 //1 0 //0 1 //1 1 Виход 4
0
|
|
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
||
| 28.05.2019, 19:40 | ||
|
Бесконечное поле - оно по-любому не бесконечное, достаточно сделать такое, чтоб твои операции не приводили к переполнению.
0
|
||
| 28.05.2019, 19:40 | |
|
Может ли шахматный конь за один ход попасть из одного поля в другое?
Шахматный конь за один ход может переместиться с одного заданного поля на другое(каждое поле задано двумя коо Выясните, может шахматный конь за один ход попасть с ячейки с координатами (x1, y1) в ячейку с координатами (x2, y2) Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Baragoz - DPS/HPS бот для WoW 3.3.5a, многоязычный
AmbA 26.10.2026
Хотите ещё ботов? У меня есть один! А я пока отдохну от него.
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=12062&stc=1&d=1793007952
Инструкция внутри.
Сразу отвечу: А в PvP с ним. . .
|
Особенности gif сгенерированных в Си
russiannick 21.10.2026
Рассмотрим генерацию gif файлов, которые в Си имеют свои особенности.
Gif представляет собой графический формат популярный в интернете. Посмотрим на палитру. Gif файл сгенерированный в си отличается. . .
|
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version
Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
|
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер
На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
|
|
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/
TL DR
Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|