В дощечку в один ряд вбиты гвоздики. Любые два гвоздика можно соединить ниточкой. Требуется соединить некоторые пары гвоздиков ниточками так, чтобы к каждому гвоздику была привязана хотя бы одна ниточка, а суммарная длина всех ниточек была минимальна.
Входные данные
В первой строке входных данных записано число N — количество гвоздиков (2≤N≤100). В следующей строке заданы N чисел — координаты всех гвоздиков (неотрицательные целые числа, не превосходящие 10000).
Выходные данные
Выведите единственное число — минимальную суммарную длину всех ниточек.
Примеры
Ввод
6
3 4 6 12 13 14
Вывод
5
#include <iostream>
#include <string>
bool is_palindrome(const std::string& s) {
std::string r(s);
std::reverse(r.begin(), r.end());
return s == r;
}
int main() {
std::string s1,s2;
setlocale(LC_ALL, "Russian");
std::cout << "Введите число 1: ";
std::getline(std::cin, s1);
std::cout << "Введите число 2: ";
std::getline(std::cin, s2);
if (is_palindrome(s1)|| is_palindrome(s2))
std::cout << "Одно из введенных чисел является палиндромом " << std::endl;
else
std::cout << "Ни одно из введенных чисел не является палиндромом " << std::endl;
return 0;
}
1) a x a = a² ⇒ b; b x a = a³ ⇒ результат
2) a x a = a² ⇒ b; b x b = a⁴ ⇒ c; c x c = a⁸ ⇒ c; c x b = a¹⁰ ⇒ результат
Программа на языке PascalABC.Net
var
a,b,c,y:real;
begin
Write('Введите число: '); Read(a);
b:=a*a; y:=b*a; Writeln('Третья степень числа равна ',y);
c:=b*b; c:=c*c; y:=b*c;
Writeln('Десятая степень числа равна ',y)
end.
Тестовые решения:
Введите число: 2
Третья степень числа равна 8
Десятая степень числа равна 1024
Введите число: -13.594
Третья степень числа равна -2512.128188584
Десятая степень числа равна 215512594781.574