Арифметическая прогрессия

  • Автор темы Alovar
  • Дата начала
A

Alovar

#1
Привет всем. Вот уже уелый день вожусь с задачкой про арифметическую прогрессию. Уж что я тока не пробовал, так и не смог написать ничего толкового. Под конец уже попер бред где я проверял кратность всех эллементов и пытался на основе этого расчитать d, но не вышло)

Вот задачка:

Добавить к некоторой последовательности A=(ai), i=1..n, n<=100, наименьшее число элементов, чтобы получить арифметическую прогрессию ( напр вводим 22 1 36 -> получаем 1 8 15 22 29 36)
 

vital

Больной Компом Детектед
29.01.2006
2 432
34
#2
мм.. Все введенные числа собираешь в массив. его сортируешь по возрастанию. Считаешь н=последний элемент-предпоследний. Далее, если разница между каждыми 2мя соседними элементами, равна н, или кратна(делится без остатка) значит это твое д. Если нет, берешь н=предпоследний-предпредпоследний и см.выше. Когда нашел д - то от первого элемента массива, до последнего прибавляя д..
========================
UPDATE
========================
хм, нет, не так.
Вспоинаем школу, и вот такую формулу

Дальше понятно?
 
A

Alovar

#3
допустим я ввел 1, 22, 36, но я не совсем догоняю как использовать их в этой формуле, если я не знаю какие они по счету пока не составлю прогрессию, т.е. 22 - это "a" n-ное, 36 это "a" m-ное, но ведь ни n ним m я не знаю.