Форум программистов, компьютерный форум, киберфорум
Наши страницы

Python

Войти
Регистрация
Восстановить пароль
 
Олив
0 / 0 / 0
Регистрация: 22.10.2015
Сообщений: 20
#1

Задача 2: игрушка Федера-программиста - Python

22.10.2015, 11:48. Просмотров 188. Ответов 3
Метки нет (Все метки)

Всего в серии постов 5 задач, буду благодарна если мне напишут хотя бы одну (нужны все 5) - 11 класс, нужно сдать завтра

2) Фёдор решил написать игрушку для двух игроков на клетчатом поле w × h (ширина и высота соответственно). На поле находятся два игрока, Зайчик и Волк. Зайчик ходит первым и может двигаться по горизонтали, вертикали и диагонали, то есть, если он находится в клетке (4, 3), то он может попасть в клетки (3, 3),(5, 3),(4, 2),(4, 4), (3, 2),(3, 4),(5, 4),(5, 2). Волк же ходит вторым и может перемещаться только по вертикали и горизонтали, то есть если волк находится в клетке (5, 7), то он может сходить в клетки (4, 7),(6, 7),(5, 6),(5, 8). Где-то на поле к клетке (x, y) находится некоторый клад и победит тот игрок, который раньше доберется до клада с точек старта. Старт Зайчика находится в клетке (1, 1), а Волка в клетке (w, h). При этом, Фёдор хочет знать заранее, кто победит, если оба игрока будут двигаться оптимально. К сожалению сам он не может написать такую программу, поэтому он обратился к Вам за помощью.

Формат входных данных
В единственной строке находятся 4 числа, w, h, x, y — размеры доски и координаты клада соответственно (1 <= w, h <= 100, 1 <= x <= w, 1 <= y <= h).

Формат выходных данных
В первой строке выведите 1, если победит Зайчик и 2, если победит Волк.
Во второй строке выведите количество шагов, которое потребуется победителю, чтобы добраться до клада.

Буду очееень благодарна решившему)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.10.2015, 11:48
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Задача 2: игрушка Федера-программиста (Python):

День Программиста задача, нужно решение - Free Pascal
День программиста отмечается в 255-й день года ( при этом 1 января считается нулевым днем). Требуется написать программу, которая определит...

C++ задача. C 2009 года наша страна празднует день программиста 13 сентября - C++
C 2009 года наша страна празднует день программиста 13 сентября. Каким днем недели будет 13 сентября указанного года (начиная с 2009 до...

Игрушка Танчики - C++
у меня есть 1 свой танк, 2 вражеских. и сейчас если один вражеский попадет в другого вражеского, то подстреленный исчезает и выходит конец...

Не устанавливается игрушка - Windows 7
При установки игры выдается такое сообщение. пробовал запустить от имени админа тоже самое. винда лицензия

Игрушка в бэйсике - QBasic
Ребят, прошу помощи. В программировании вообще не шарю, да и стремления даже нет. Понял что не мое. Осталось только сдать курсач по...

Процессоры и игрушка - Процессоры
AMD FX 6120 3.5 GHz or better для нижней игры он нужен,но нету. AMD A10-7850K Radeon R7, 12 Compute Cores4C+8G 3.70GH стоит у меня. В...

3
Sergey_B
163 / 163 / 14
Регистрация: 08.01.2013
Сообщений: 335
22.10.2015, 13:37 #2
Вторую задачу наверное ваш одноклассник уже спросил: Олимпиадная задача номер 2, там ему расписали алгоритм, правда не знаю насколько он верный, не вникал.
0
Sergey_B
163 / 163 / 14
Регистрация: 08.01.2013
Сообщений: 335
22.10.2015, 14:31 #3
Вторая (все права на алгоритм у JuriiMW на авторство не претендую )
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
    inputStr = '6 6 3 4' #Исходные данные
    w, h, x, y = [int(i) for i in inputStr.split()] #Записываем исходные данные в переменные
    print "Исходные данные (w, h, x, y): ", w, h, x, y #Выводим исходные данные
    #Для зайца
    Lr = (x - 1) + (y - 1) - (min(x,y) - 1) 
    #Для волка
    Lw = (w - x) + (h - y)
    #Определим, победил ли заяц 
    if Lr < Lw:
        print "1"
    else:
        print "2"
    print "Ходов для зайца: ", Lr
0
Marinero
Модератор
Эксперт NIX
1826 / 1570 / 476
Регистрация: 02.03.2015
Сообщений: 5,137
22.10.2015, 16:58 #4
Python
5
Lr = max(x,y) - 1 #ходов зайца
Python
9
if Lr <= Lw # при = побеждает заяц, т.к. ходит первым
1
22.10.2015, 16:58
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.10.2015, 16:58
Привет! Вот еще темы с ответами:

Первая игрушка - C++ Builder
Ребят, в общем, задача следующая: необходимо разработать игру. Игра представляет собой квадратную комнату (вид сверху), в которой есть 2...

Небольшая игрушка в консоли - C++
Решил написать небольшую игру в консольном интерфейсе. Суть такова: в определенную точку на экране при нажатии ЛКМ ставится символ, который...

Консольная Java-игрушка - Java SE
Есть задание. Написать программу &quot;Гладиаторские бои&quot;. Кто может бесплатно помочь, отпишитесь.Хотя бы, направляли бы меня. Заранее...

Описать структуру Игрушка - Turbo Pascal
Сформировать файл содержащий сведения об игрушках название стоимость возрастные границы например от 2. до 5 вывести информацию о самой...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.