Внимание! center-referat.ru не продает дипломы, аттестаты об образовании и иные документы об образовании. Все услуги на сайте предоставляются исключительно в рамках законодательства.

Готовые дипломные, курсовые, рефераты. Вы можете бес-платно скачать любую понравившуюся работу.

Задача В. "Гвоздики" ** прямой дощечке вбиты гвоздики. Любые два гвоздика можно соединить...

Сегодня примерно в 12:25 на наш email ящик поступил вопрос, который наши модераторы от-несли к категории Разное. Постараемся дать на него полноценный ответ.

Тема вопроса с пояснением

Задача
В. "Гвоздики"


На
прямой дощечке вбиты гвоздики. Любые два гвоздика можно соединить ниточкой.
Требуется соединить какие-то пары гвоздиков ниточками так, чтобы к каждому
гвоздику была привязана хотя бы одна ниточка, а суммарная длина всех ниточек
была минимальна.

Формат входного файла В первой строке входного файла INPUT.
IN записано число N – количество гвоздиков (2 ≤ N ≤ 100). В следующей строке
записано N чисел -координаты всех гвоздиков (неотрицательные целые числа,не
превосходящие 10000).


Формат выходного файла
В выходной файл OUTPUT. OUT нужно вывести единственное
число -минимальную суммарную длину всех ниточек.


Примеры:




INPUT. IN


OUTPUT. OUT




5
4
10 0 12 2


6



Ответ с привлечением экспертов

Среди нашей команды есть эксперты, которые успешно отвечают на вопросы из рубрики "Информатика". Напомним, что вы задали следующий вопрос:

Задача
В. "Гвоздики"


На
прямой дощечке вбиты гвоздики. Любые два гвоздика можно соединить ниточкой.
Требуется соединить какие-то пары гвоздиков ниточками так, чтобы к каждому
гвоздику была привязана хотя бы одна ниточка, а суммарная длина всех ниточек
была минимальна.

Формат входного файла В первой строке входного файла INPUT.
IN записано число N – количество гвоздиков (2 ≤ N ≤ 100). В следующей строке
записано N чисел -координаты всех гвоздиков (неотрицательные целые числа,не
превосходящие 10000).


Формат выходного файла
В выходной файл OUTPUT. OUT нужно вывести единственное
число -минимальную суммарную длину всех ниточек.


Примеры:




INPUT. IN


OUTPUT. OUT




5
4
10 0 12 2


6



И сразу же ответим на него:

После проведенного совещания с другими специалистами нашего сервиса, мы склонны пола-гать, что правильный ответ на заданный вами вопрос будет звучать следующим образом:

//PascalABC.NET версия 3.2, сборка 1389
//Если программа не запускается, то обновите версию
begin
    var n := ReadInteger('n =');
    var a := ReadArrInteger('Массив', n);
    a.Sort;
//    Println(a);
    
    var b := ArrFill(n + 1, 0);
    b[0] := 0;   
    b[1] := Maxint;   
    for var i := 2 to n do
        b[i] := min(b[i - 1], b[i - 2]) + abs(a[i - 1] - a[i - 2]);  
    
//    Println(b);
    WriteLn(b[n]);
end.

Авторские права 2002-2021 center-referat.ru