Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.01.2007, 00:33   #1
Flash_
Пользователь
 
Аватар для Flash_
 
Регистрация: 19.12.2006
Сообщений: 91
По умолчанию Pasсal. Числовая последовательность.

Помогите с задачей пожалуйста..

УСЛОВИЕ:
Дана последовательность натуральных чисел:
7, 11, 13, 14, 19, 21, 22, 25, ..


ТРЕБУЕТСЯ: По номеру элемента (N) найти его значение (K).
Время выполнения программы: 1 секунда.
(0 < N < 21474833647)

P.S. Алгоритм-то решения легкий - не могу определить в чем заключается последовательность?! Может Вы разберетесь..? Насколько знаю, числа в двоичную систему перевести надо: тогда хоть какая-то закономерность усматривается.. Но это не точно.=/

Последний раз редактировалось SuperVisor; 16.01.2007 в 20:54.
Flash_ вне форума Ответить с цитированием
Старый 16.01.2007, 00:43   #2
AVer
Андрей
Форумчанин
 
Аватар для AVer
 
Регистрация: 21.11.2006
Сообщений: 457
По умолчанию

Насколько я понял там идет постоянный свиг нулей, тоесть следующие числа будут 28, 35, 37, 38, 41, 42 и т.д...
ICQ: 5311314
[SIGPIC][/SIGPIC]

Последний раз редактировалось AVer; 16.01.2007 в 00:53.
AVer вне форума Ответить с цитированием
Старый 16.01.2007, 14:21   #3
Virtson
Владимир М.
Участник клуба
 
Аватар для Virtson
 
Регистрация: 30.10.2006
Сообщений: 1,289
Сообщение

Код:
    
    7,   11,   13,   14,   19,   21,   22,   25 ..
00111,01011,01101,01110,10011,10101,10110,11001..
56 - самое большое число, по ходу .
Берегите друг друга!
Virtson вне форума Ответить с цитированием
Старый 16.01.2007, 16:03   #4
zetrix
Delphi/C++/C#
Участник клуба
 
Аватар для zetrix
 
Регистрация: 29.10.2006
Сообщений: 1,972
По умолчанию

Цитата:
56 - самое большое число, по ходу
Почему? Ведь 0 < N < 21474833647.
zetrix вне форума Ответить с цитированием
Старый 16.01.2007, 16:45   #5
Flash_
Пользователь
 
Аватар для Flash_
 
Регистрация: 19.12.2006
Сообщений: 91
По умолчанию

Цитата:
Насколько я понял там идет постоянный свиг нулей, тоесть следующие числа будут 28, 35, 37, 38, 41, 42 и т.д...
Нее.. Не то. Последовательность кажется понял: взяты все натуральные числа в двоичной системе, содержащие по 3 единицы в записи; остальные - нули.
Теперь алгоритм придумать не получается. Как заставить компилятор находить элемент по номеру? Перебором нельзя же.

Последний раз редактировалось Flash_; 16.01.2007 в 16:48.
Flash_ вне форума Ответить с цитированием
Старый 16.01.2007, 17:32   #6
Virtson
Владимир М.
Участник клуба
 
Аватар для Virtson
 
Регистрация: 30.10.2006
Сообщений: 1,289
По умолчанию

можно, без перебора
Берегите друг друга!
Virtson вне форума Ответить с цитированием
Старый 16.01.2007, 17:47   #7
Flash_
Пользователь
 
Аватар для Flash_
 
Регистрация: 19.12.2006
Сообщений: 91
По умолчанию

Цитата:
можно, без перебора
Ага, хотелось бы знать как..)
Flash_ вне форума Ответить с цитированием
Старый 16.01.2007, 18:17   #8
Virtson
Владимир М.
Участник клуба
 
Аватар для Virtson
 
Регистрация: 30.10.2006
Сообщений: 1,289
Счастье

Цитата:
Сообщение от Flash_ Посмотреть сообщение
Нее.. Не то. Последовательность кажется понял: взяты все натуральные числа в двоичной системе, содержащие по 3 единицы в записи; остальные - нули.
а разве мы с AVer не то же самое говорим ?
Берегите друг друга!
Virtson вне форума Ответить с цитированием
Старый 17.01.2007, 16:36   #9
Flash_
Пользователь
 
Аватар для Flash_
 
Регистрация: 19.12.2006
Сообщений: 91
По умолчанию

Цитата:
Сообщение от Virtson Посмотреть сообщение
а разве мы с AVer не то же самое говорим ?
Ну дело ведь не в "сдвиге нулей", а просто в количестве единиц. Так что там с "без перебора"?..
Flash_ вне форума Ответить с цитированием
Старый 17.01.2007, 18:46   #10
SuperVisor
Павел Сергеевич
Форумчанин
 
Регистрация: 05.11.2006
Сообщений: 665
По умолчанию

Цитата:
Сообщение от Flash_ Посмотреть сообщение
Ну дело ведь не в "сдвиге нулей"...
Это конечно мысль:
Код:
00111
01011
01101
01110
10011
10101
10110
11001
11010
11100
Хотя... Не сложно ошибиться:
Код:
00111
01011
01101
01110
10011
10101
10110
11001
11010
11100
Так что Flash_ прав...
Здесь смещение едениц. Вот продолжение:
Код:
100011
100101
100110
101001
101010
101100
110001
110010
110100
111000
Познавая других, мы познаем себя.
С'est la vie...

Последний раз редактировалось SuperVisor; 17.01.2007 в 18:58.
SuperVisor вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
числовая последовательность pelsh Помощь студентам 1 15.02.2008 03:20
числовая последовательность и массив дангер Паскаль, Turbo Pascal, PascalABC.NET 6 28.01.2008 20:38
Paskal.Матрица Стасек Помощь студентам 3 21.01.2008 18:28
Paskal-Cikly Kira Помощь студентам 1 05.04.2007 18:32