|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
22.06.2017, 22:03 | #1 |
Новичок
Джуниор
Регистрация: 22.06.2017
Сообщений: 1
|
Pascal. Некоторое число содержится в каждом из трех целочисленных неубывающих массивов x[1] <= ... <=x[p], y[1] <= ... <= y[q], z[1] <= ... <= z[r]. Найти одно из таких чисе
Помогите, пожалуйста, написать код с комментариями (не использовать метод бинарного поиска).
Задание: Некоторое число содержится в каждом из трех целочисленных неубывающих массивов x[1] <= ... <=x[p], y[1] <= ... <= y[q], z[1] <= ... <= z[r]. Найти одно из таких чисел. Число действий должно быть порядка p + q + r. |
22.06.2017, 22:29 | #2 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
покажите свои наработки, конкретные вопросы и т.п.
Или в раздел Фриланс если вы не хотите ничего делать, а ищете кого-то, кто выполнит ваши задачи за вознаграждение.
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
23.06.2017, 13:42 | #3 |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,528
|
представим задачу так
Есть три ленты с записанными числами и есть три же окошка в которых мы можем наблюдать числа с этих лент окошки могут двигаться по ленте влево-вправо или же из-за "относительности движения" можем считать что это движутся ленты в окнах вправо-влево(наоборот), а сами окна неподвижны относительны друг друга. Код:
а окошки это номерА элементов xi, yi, zi движение лент(окон) inc(xi); Dec(xi); .... на самом деле нам потребуется только одно направление "вперед" Inc(xi); ==движение ленты влево 1.исходное положение. все окна показывают начальный элемент ленты 2.наблюдая три числа(в окнах) мы может сравнить их. 2.1.если все числа равны, задача решена. 2.2.два числа равны, а третье их меньше. (два минимальных) 2.3.два числа равны, а третье их больше. (одно минимальное) 2.4.все числа разные. (одно минимальное). -- если есть минимальное (хотя бы одно), то учитывая упорядоченность, можно сказать что искомое число на этой ленте заведомо находится где-то дальше. 3.двигаем первую из лент с минимальным числом (см. 2.2) "вперед" 4. переходим к п.2. ПЕРВЫЙ комментарий к программе есть. http://www.gunsmoker.ru/2011/01/blog-post.html пишем второй комментарий ---1.исходное положение. все окна показывают начальный элемент ленты устанавливаем во ВСЕХ окнах начальныЕ элементЫ лент. .... пишем последний комментарий ===КОД P.S. все что здесь написано, это есть адаптация алгоритма сортировки слиянием - на случай трех массивов; - замена слияния на поиск(выбор) равного.
программа — запись алгоритма на языке понятном транслятору
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
В каждом из массивов X(Nx), Y(Ny) и Z(Nz) вещественных чисел найти среди отрицательных элементов максимальный элемент (элементы) и | burn86 | Общие вопросы по Java, Java SE, Kotlin | 9 | 27.03.2015 12:30 |
некоторое число оканчивается на 2, если эту цифру переместить на первое место, то число удвоится. написать программу поиска числа | Noob325 | Помощь студентам | 6 | 06.12.2012 10:39 |
Даны числовой ряд и некоторое число e>0. Найти сумму тех членов ряда, которые по модулю больше или равны e | DevilSkyS | Помощь студентам | 4 | 04.12.2012 20:19 |
(PASCAL ABC)Дана Матрица, найти индексы всех эл-ов с наибольшим значением, если таких элементов несколько | Grandhustla | Помощь студентам | 0 | 25.05.2011 16:06 |
C++. среднее арифметическое и минимальное и максимальное число последовательности дробных чисе | ~Az@liya~ | Помощь студентам | 2 | 08.11.2010 18:07 |