Хосспаде Иегове, да научитесь же вы язык указывать! Perl. 2. @array; #Формат ввода не задан, будем считать что он уже заполнен. $min = $array[0]; $max = $array[0]; for $i (@array) { $min = $i if ($i < $min); $max = $i if ($i > $min); } %hash = map {$_ => 1} @array; for $i in ($min..$max) { print "$i " if (!(exists $hash{$i})); } 3. use Quantum::Superpositions; #Модуль для квантовых вычислений, жутко удобная штука. @primes; $n = <>; push @primes, ($i) if ($i % all(2..sqrt($i)+1) != 0) i for $i (2..$n); #ответ в массиве @primes. 4. На этот вопрос я не так давно отвечал, ну ладно. $n = <>; @multipliers; for $i (2..$n) { if (!($n % $i)) { push @multipliers, ($i); $n /= i; } } #ответ в массиве @multipliers. А теперь укажите-таки язык и я, если с этим языком знаком напишу нормальный, не извращённый ответ.
Задача на динамическое программирование. Советую почитать поподробнее на эту тему в интернете. Подобные задачи для изучения: платная лестница, кузнечик, последовательность Фибоначчи. #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; }
2.
@array; #Формат ввода не задан, будем считать что он уже заполнен.
$min = $array[0];
$max = $array[0];
for $i (@array) {
$min = $i if ($i < $min);
$max = $i if ($i > $min);
}
%hash = map {$_ => 1} @array;
for $i in ($min..$max) {
print "$i " if (!(exists $hash{$i}));
}
3.
use Quantum::Superpositions; #Модуль для квантовых вычислений, жутко удобная штука.
@primes;
$n = <>;
push @primes, ($i) if ($i % all(2..sqrt($i)+1) != 0) i for $i (2..$n);
#ответ в массиве @primes.
4. На этот вопрос я не так давно отвечал, ну ладно.
$n = <>;
@multipliers;
for $i (2..$n) {
if (!($n % $i)) {
push @multipliers, ($i);
$n /= i;
}
}
#ответ в массиве @multipliers.
А теперь укажите-таки язык и я, если с этим языком знаком напишу нормальный, не извращённый ответ.
#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;
}