Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Алгоритм генерации последовательности по номеру

41K
14 октября 2011 года
grrrr
23 / / 23.05.2009
Есть такая задача:
Генерировать последовательность по ее порядковому номеру.
Дано:
- шаблон последовательности (например "ABC")
- словарь последовательности (т.е. A="123", B="qw", C="0123456") - все допустимые значения по шаблону
- номер последовательности (т.е. принадлежащий "0".."н", н - максимальный номер(равен числу последовательностей) )

т.е. "1q0" - типичный элемент последовательности.

Суть задачи: сгенерировать последовательность по ее номеру. Т.е. сопоставить номер последовательности.

Из-за того что каждый элемент последовательности имеет свой словарь(необязательно) не могу представить этот алгоритм. Это вообще возможно? хелп!
14
14 октября 2011 года
Phodopus
3.3K / / 19.06.2008
1q0 - это 0й элемент. хорошо, как тогда выглядит первый?
41K
14 октября 2011 года
grrrr
23 / / 23.05.2009
Это не нулевой элемент. Не столь важно как будет выглядеть нулевой. Важно однозначно идентифицировать элемент по номеру и наоборот.
277
15 октября 2011 года
arrjj
1.7K / / 26.01.2011
Ну примерно так:
0-й элемент 1q0
1-й элемент 1q1
и т.д.
тогда код будет выглядеть примерно так:
 
Код:
int fff=123;//номер элемента последовательности
char ppp[3];//последовательность
char A[3],B[2],C[7];//паттерн последовательности
//Собственно вычисление
ppp[2]=C[fff%7];//7-кол-во элементов в 3-й части последовательности
fff/=7;
ppp[1]=B[fff%2];//2-кол-во элементов во 2-й части последовательности
fff%=2;
ppp[0]=A[fff%3];//3-кол-во элементов в 1-й части последовательности

Ну обратно сам додумаешься. (надеюсь :))
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог