203 / 90 / 15
Регистрация: 27.07.2018
Сообщений: 323
|
|
1 | |
Ищем клад — 128.10.2018, 18:22. Показов 122688. Ответов 55
Метки нет (Все метки)
Помогите решить задачу.
Мы находимся на острове, на котором закопан клад. Мы находимся в точке с координатами (0, 0) и смотрим на север. Нам известно, где закопан клад, но этого мало: остров полон опасностей, и нужно перемещаться строго по указаниям карты, которая, к счастью, тоже имеется в нашем распоряжении. Мы хотим найти клад как можно скорее. Известны координаты клада и указания, которым нужно следовать, чтобы его найти. Каждое указание карты состоит из одного слова и, возможно, одного натурального числа. Слово — одно из набора: «вперёд», «налево», «направо», «разворот» или «стоп». После слова «вперёд» следует количество шагов, которое следует пройти в том направлении, куда мы в данный момент смотрим. Слова «налево» или «направо» означают, что нужно изменить направление взгляда под прямым углом, «разворот» — что прямо на обратное. Команда «стоп» означает остановку. Найдите минимальное количество указаний карты, которое нужно выполнить, чтобы прийти к кладу. Формат ввода Сначала вводятся два числа на отдельных строчках: координаты клада по оси икс (запад-восток) и игрек (юг-север). Затем следует некоторое количество указаний карты. Каждое указание карты состоит из одного слова и, возможно, одного натурального числа на отдельной строке. Слово — одно из набора: «вперёд», «налево», «направо», «разворот» или «стоп». Формат вывода Программа выводит на отдельных строках минимальное количество указаний карты, которое нужно выполнить, чтобы прийти к кладу, и направление взгляда в этот момент (одно из: «север», «юг», «запад», «восток»). Гарантируется, что карта приводит к кладу. Добавлено через 33 минуты Что тут делать хотя бы надо, я не понимаю.
0
|
28.10.2018, 18:22 | |
Ответы с готовыми решениями:
55
Ищем клад — 2 Ищем клад — 1 Ищем клад-1 Ищем клад |
14 / 11 / 3
Регистрация: 12.04.2018
Сообщений: 51
|
||||||
03.11.2018, 21:00 | 2 | |||||
Сообщение было отмечено CyberGame как решение
Решение
Ну ты даешь, 2 минутная задача, даже для новичка все же в условии понятно
Лови код:
2
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,680
|
||||||
03.11.2018, 22:16 | 3 | |||||
Я ни хрена в условии не понял, а переспрашивать бесполезно, по-моему.
0
|
14 / 11 / 3
Регистрация: 12.04.2018
Сообщений: 51
|
|
04.11.2018, 08:48 | 4 |
Если, что я хотел сначала как kravam код написать, но потом понял что CyberGame, только недавно в Python и поэтому написал максимально понятно (на мой взгляд)
1
|
203 / 90 / 15
Регистрация: 27.07.2018
Сообщений: 323
|
|
04.11.2018, 11:03 [ТС] | 5 |
Glander, спасибо, а что означает запись x_y[0, 0] - массив какой-то?
0
|
14 / 11 / 3
Регистрация: 12.04.2018
Сообщений: 51
|
|
04.11.2018, 11:15 | 6 |
Нет, это список состоящий из x и y (представь себе координатную плоскость x,y где x=0 и y=0 - начало координатной плоскости). И когда я обращаюсь к x_y[0], то обращаюсь к x, а если к x_y[1], то обращаюсь к y
1
|
203 / 90 / 15
Регистрация: 27.07.2018
Сообщений: 323
|
|
04.11.2018, 11:18 [ТС] | 7 |
Glander, списки мы еще не проходили. Слушай, а можно ли это заменить на x = 0, y = 0 и просто в цикле подставить?
0
|
14 / 11 / 3
Регистрация: 12.04.2018
Сообщений: 51
|
||||||
04.11.2018, 11:23 | 8 | |||||
Кстати, CyberGame, там кнопочки есть +1 спс и ответ, не забудь нажать, мне будет приятно)
Добавлено через 4 минуты Без списков, вот пожалуйста:
3
|
203 / 90 / 15
Регистрация: 27.07.2018
Сообщений: 323
|
|
04.11.2018, 11:52 [ТС] | 9 |
Glander, кхм, задачку то вы не решили. смотри пример
Ввод 9 -2 Вперед 9 Налево Вперед 2 ========= Вот так нужно было. На подобие вашей, я уже делал. Блин, внимательней условия прочитайте. Пожалуйста помогите( Добавлено через 27 минут Поднимаю!
0
|
14 / 11 / 3
Регистрация: 12.04.2018
Сообщений: 51
|
||||||
04.11.2018, 12:33 | 10 | |||||
Все переделал, вроде работает
добавь в 56 строчку print('север')
0
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,680
|
|
04.11.2018, 13:40 | 11 |
0
|
14 / 11 / 3
Регистрация: 12.04.2018
Сообщений: 51
|
|
04.11.2018, 14:47 | 12 |
это косячный пример он привел...(В условии сказано:Гарантируется, что карта приводит к кладу). Я сделал как в условии написано. Вот нормальный пример:
-2 9 вперёд 9 налево вперёд 2 разворот стоп Вывод моего кода:3 запад все нормально работает Добавлено через 42 секунды А судя по его примеру мы к кладу не придем...
0
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,680
|
|
04.11.2018, 15:01 | 13 |
Glander, а у тебя где ввод?
0
|
14 / 11 / 3
Регистрация: 12.04.2018
Сообщений: 51
|
|
04.11.2018, 15:06 | 14 |
пример = ввод
Добавлено через 3 минуты Если так принципиально: Ввод: 2 9 вперёд 9 налево вперёд 2 разворот стоп Вывод: 3 запад
0
|
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,680
|
|
04.11.2018, 15:33 | 15 |
Я вот не пойму, а почему такой ввод? Если я правильно понимаю, вводом должно быть только координаты клада. Два числа. Как у меня. Всё! Остальное не пойми зачем нужно вводить.
0
|
14 / 11 / 3
Регистрация: 12.04.2018
Сообщений: 51
|
|
04.11.2018, 18:09 | 16 |
А, ты не понимаешь... Так вот в условии говорится, что ты находишься в точке (0,0) и ты должен попасть в точку с кладом(которая не находится в (0,0), но чтобы туда попасть ты должен ввести команды чтобы передвигаться и попасть в точку с кладом (т.е. еще ввод (направление (вперед и сколько шагов)и повороты (налево, направо или развернуться))). Надеюсь понятно объяснил.
Добавлено через 2 минуты Если мне не веришь посмотри Формат ввода Сначала вводятся два числа на отдельных строчках(это ввод): координаты клада по оси икс (запад-восток) и игрек (юг-север). Затем следует некоторое количество указаний карты(и это тоже ввод). Каждое указание карты состоит из одного слова и, возможно, одного натурального числа на отдельной строке. Слово — одно из набора: «вперёд», «налево», «направо», «разворот» или «стоп».
0
|
203 / 90 / 15
Регистрация: 27.07.2018
Сообщений: 323
|
||||||
04.11.2018, 20:02 [ТС] | 17 | |||||
Glander, всё вроде правильно, только не работают примеры:
Ввод -2 9 вперёд 9 налево вперёд 2 разворот вперёд 17 стоп ВЫВОД 3 запад Ввод 0 1 вперёд 2 разворот вперёд 1 ВЫВОД 3 юг Сам переделал, почти работает. Только он выводит не ту переменную the minimum number...
0
|
14 / 11 / 3
Регистрация: 12.04.2018
Сообщений: 51
|
|
04.11.2018, 20:18 | 18 |
А чем мой вариант плох? У меня эти примеры правильно работают
0
|
14 / 11 / 3
Регистрация: 12.04.2018
Сообщений: 51
|
|
04.11.2018, 20:25 | 19 |
Вот скрины:
0
|
14 / 11 / 3
Регистрация: 12.04.2018
Сообщений: 51
|
|
04.11.2018, 20:30 | 20 |
во втором нужно пару enter'ов нажать и будет вам вывод (это нормально, что вывод такой не переживай)
Добавлено через 2 минуты И то, что ты переделал 100% работать не будет т.к. во-первых тыы должен запросить координаты клады, во вторых the_minimum_number_of_instructions ты вывести не сможешь, т.к. он находится в цикле и еще много других ошибок... Так, что не советую менять мой код)
0
|
04.11.2018, 20:30 | |
04.11.2018, 20:30 | |
Помогаю со студенческими работами здесь
20
Ищем клад — 1 Ищем клад - 1 Ищем клад — 1 Ищем клад Задача "Ищем клад — 1" Ищем Клад - 1 Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |