Вася придумал игру, в которой герой должен добраться до финиша, прыгая по платформам. прыжок может быть на соседнюю или через одну платформу. в первом случае затрачивается |х2-х1|, а во втором 3*|х2-х1| единиц энергии, где х1 и х2- высоты платформ, с которой и на которую совершается прыжок. какое минимальное количество энергии герой потратит, чтобы перебраться на конечную платформу, начав с первой?
236
421
Ответы на вопрос:
На динамическое программирование. советую почитать поподробнее на эту тему в интернете. подобные для изучения: платная лестница, кузнечик, последовательность фибоначчи. #include < iostream> #include < cmath> using namespace std; int main() { int n; cin > > n; int height[n]; for(int i=0; i< n; i++) cin > > height[i]; int energy[n]; for(int i=1; i< n; i++) energy[i] = energy[i-1] + abs(height[i]-height[i-1]); cout < < height[n-1]; return 0; }
Var a,b,c,i,n,s: integer; begin write('введите n: '); readln(n); a : = 0; write(a,' '); b : = 1; write(b,' '); s: =1; for i: =3 to n do begin write(a+b,' '); s: =s+a+b; c : = b; b : = a + b; a : = c; end; writeln(); writeln('сумма: ',s); end.
Популярно: Информатика
-
alina2006730.05.2021 23:38
-
rabota777777ozj6qd17.06.2022 07:25
-
Алмат133504.12.2022 16:20
-
mavimkolosov6625.10.2020 06:25
-
darinabrovender05.03.2021 17:17
-
таня202329.08.2021 23:47
-
katy24423.01.2021 18:24
-
viktoriav8402.11.2020 18:52
-
кіндра21.02.2023 08:06
-
вероника104629.03.2020 18:14