Форум программистов, компьютерный форум CyberForum.ru

один в поле воин - C++

Восстановить пароль Регистрация
 
лыс
1 / 1 / 0
Регистрация: 04.11.2012
Сообщений: 50
01.12.2012, 12:15     один в поле воин #1
Здравствуйте! Помогите решить вот такую задачу. Понял закономерность "клетка,где стоит конь - количество полей которые он бьет"). Но никак не могу понять, что, каждую клетку доски (а их 64) надо заполнить числом(сколько бьёт конь)? Или можно как-то покороче? Помогите, пожалуйста.

Один в поле воин

Условие этой задачи очень простое: вам всего лишь надо определить, сколько клеток находится под боем шахматного коня, одиноко стоящего на шахматной доске. На всякий случай напомним, что конь ходит буквой «Г» — на две клетки по горизонтали или вертикали в любом направлении, и потом на одну клетку в направлении, перпендикулярном первоначальному.

Исходные данные
В первой строке находится единственное число N, 1 ≤ N ≤ 100 — количество тестов. В каждой из последующих N строк содержится очередной тест: два символа (маленькая латинская буква от 'a' до 'h' и цифра от 1 до 8) — стандартное шахматное обозначение клетки, на которой стоит конь. При этом буква обозначает вертикаль, а цифра — горизонталь.

Результат
Выведите N строк: в каждой из них должно находиться единственное число — количество клеток шахматной доски, находящихся под боем коня.

Пример:
вход: 3
a1
d4
g6

выход: 2 8 6
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.12.2012, 12:15     один в поле воин
Посмотрите здесь:

Поле first - целое число, длительность телефонного разговора в минутах; поле second - дробное число, стоимость одной минуты в гривнах C++
Определить сможет ли белый слон расположенный на поле (a,b),одним ходом пойти на поле (e,f),не попав при этом под удар чёрного коня нах.(c,d) C++
C++ шахматное поле
Поле first — целое число, левая граница диапазона, включается в диапазон; поле second — целое число, правая граница диапазона, не включается в диапазо C++
Слить один два файла в один C++
C++ Только константное статическое поле НЕ МОЖЕТ быть поле членом класса !
Друзья, подскажите, как в классе создать константное поле, ссылочное поле и объектное поле? C++
C++ Если елементы массива соседние одинаковы то один из них заменяется на 0 а другой увеличиваетмя на один

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
IGPIGP
Комп_Оратор)
 Аватар для IGPIGP
6156 / 2885 / 281
Регистрация: 04.12.2011
Сообщений: 7,680
Записей в блоге: 3
29.12.2012, 13:00     один в поле воин #2
лыс, логически, можно сформулировать так:
Есть бесконечное игровое поле. То есть координаты черно-белых полей на нём не ограничены ни числом ни знаком.
И есть шахматная доска, расположенная точно по средине)). На ней координаты 0-8.
И есть фигура со своей маской хода.
Тогда можно, например:
Написать функцию получающую координату коня и возвращающую указатель на структуру которая содержит координаты полей, которые бьёт этот конь.
Проверить поля структуры передав функции которая выясняет принадлежит ли поле доске и выводит результат.
Можно и с ООП сделать.
Yandex
Объявления
29.12.2012, 13:00     один в поле воин
Ответ Создать тему
Опции темы

Текущее время: 04:50. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru