Задача с шахматным конем. Конь - не простой...
Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.
Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.
Прикол в том, что конь не обычный, а ДОЛБАН! Ходит не на две и одну клетку, а на ТРИ и одну клетку!!! Также, если ввести размерность доски меньше, чем 8 — то выводит, что не обойти — и это верно. А если 8 — то молчит, как партизан, строкой моргая...
Помогите, люди добрые!!
так у вас так и написано, что конь на три ходит
//static int xy[8][2] = {{ 3,1},{ 3,-1},{1,-3},{-1,-3},{ //-3,-1},{ -3, 1},{-1, 3},{1, 3}}; // ходы коня — возможные
the Power of JS
function fb (line) {
var answer;
var answer_line;
var horse;
var movesArr = [];
var letter = line[0];
var digit = +line[1];
fieldLetter = ['a','b','c','d','e','f','g','h'];
fieldDigit = [1, 2, 3, 4, 5, 6, 7, 8];
movesArr.push(fieldLetter[fieldLetter.indexOf(letter) — 2] + fieldDigit[digit-2]);
movesArr.push(fieldLetter[fieldLetter.indexOf(letter) — 2] + fieldDigit[digit]);
movesArr.push(fieldLetter[fieldLetter.indexOf(letter) — 1] + fieldDigit[digit-3]);
movesArr.push(fieldLetter[fieldLetter.indexOf(letter) — 1] + fieldDigit[digit+1]);
movesArr.push(fieldLetter[fieldLetter.indexOf(letter) + 1] + fieldDigit[digit-3]);
movesArr.push(fieldLetter[fieldLetter.indexOf(letter) + 1] + fieldDigit[digit+1]);
movesArr.push(fieldLetter[fieldLetter.indexOf(letter) + 2] + fieldDigit[digit-2]);
movesArr.push(fieldLetter[fieldLetter.indexOf(letter) + 2] + fieldDigit[digit]);
horse = movesArr.join(' ');
answer = horse.match(/[a-h]+\d/g);
answer_line = answer.join(' ');
console.log(answer_line);
}
fb('b1');