ЗАДАЧА НА PYTHON 9 класс СРОЧНО!!!
Шпунтик очень любил мастерить разные вещи. Однажды он задумал соорудить машину для уборки улицы. Он трудился целую неделю и создал автомобиль "Винтик-2". Шпунтик запрограммировал автомобиль на выполнение трех команд:
Forward n - вызывает перемещение и исполнителя на n единицу расстояния и уменьшает заряд исполнителя на f(n) единиц;
Left - вызывает изменение направления движения на 90 градусов влево и уменьшает заряд исполнителя на 1 единицу.
Right - вызывает изменение направления движения на 90 градусов вправо и уменьшает заряд исполнителя на 1 единицу.
Функция f(n)=k, где k*k >=n, а (k-1)*(k-1) < n
Испытание своего изобретения запланировал на специальном полигоне, разлинованном на единичные клетки. В узел каждой клетки, кроме начальной, Шпунтик положил по 1 фантику. Автомобиль разместил в центре вдоль одной из линий.
Определите, сколько фантиков собрал бы исполнитель Винтик-2, если известны: начальный заряд исполнителя и список команд.
Считается, что команда может быть выполнена, если размера заряда хватает на её полное выполнение. Если заряда не хватает на выполнение команды, то исполнитель переходит к выполнению следующей команды.
Гарантируется, что размер помещения достаточен для выполнения всех команд.
Входные данные:
В первой строке указан начальный заряд исполнителя и количество команд N. В следующих N строках записаны команды для исполнителя.
Все числа натуральные и не более 1000000.
Выходные данные
Ответ на задачу - количество фантиков, которые успеет собрать исполнитель до окончания заряда или завершения программы
Примеры:
входные данные
Выходные данные
Пояснение
4 5
Left
Left
Left
Forward 2
Left
Forward 1
0
После выполнения трех команд у исполнителя останется 1 единица заряда,
которой не хватит на выполнение 4 команды, и она будет пропущена.
Исполнитель выполнит 5 команду. Исполнитель остался на месте.
4 5
Right
Forward 2
Left
Forward 1
Left
2
35 10
Forward 71
Left
Forward 40
Left
Forward 50
Left
Forward 84
Forward 46
Right
Forward 36
206
У Исполнителя всего 35 единиц заряда. На выполнение 1-й команды Исполнитель истратит 8 единиц заряда, 2-й команды - 1 заряд, 3-й команды - 7 зарядов, 4-й команды - 1 заряд, 5 команды - 8 зарядов, 6 команды - 1 заряд.
Таким образом, после выполнения 6-х команд у Исполнителя останется 9 единиц заряда.
Этого недостаточно для выполнения 7-й команды, и она будет пропущена.
Исполнитель ещё сможет выполнить 8 и 9 команды.
Траектория Исполнителя имеет самопересечения, поэтому количество собранных фантиков
меньше длины пройденного пути.
я не уверен что кому то не лень это решать