Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 13.09.2017
Сообщений: 37

Определение n-го члена последовательности

17.11.2017, 11:51. Показов 888. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вот сама последовательность:
1, 1, 2, 1, 2, 3, 1, 2, 3, 4, ..
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.11.2017, 11:51
Ответы с готовыми решениями:

Найти номер первого члена последовательности, который отличается от предыдущего члена не более чем на заданное значение
Рассмотрим последовательность, образованную дробями: 1/1, 2/1, 3/2, ..., в которой числитель (знаменатель) следующего члена...

В последовательности Фибоначчи найти индекс члена последовательности, удовлетворяющего условию
помогите не могу найти ошибку вводится число A,найти номер К такого числа Фибоначчи ,что Xк-1<=A<Xк. #include...

Определение члена класса
Выдает ошибку типа оператор += не является членом класса Distance. ни могу понять include <iostream> using namespace std; ...

11
 Аватар для Bargos
12 / 12 / 3
Регистрация: 15.11.2017
Сообщений: 37
17.11.2017, 13:12
Интересная задачка. Я бы сделал так:
1. Спросил бы пользователя, какой член ему нужен
2. Создал динамический массив, в котором последний элемент стал искомым
3. Заполнил массив, используя счëтчик, который увеличивается на 1 каждый раз, когда микропоследовательность будет окончена.
4. Вывел значение.

Теперь о микропоследовательности. Можно заметить, что числа выстраиваются таким образом: сначала только число 1, потом на одно больше - 1, 2; далее ещë больше - 1, 2, 3. Закономерность показана наглядно. Удачи
0
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
17.11.2017, 13:31
Цитата Сообщение от Bargos Посмотреть сообщение
Создал динамический массив, в котором последний элемент стал искомым
А если пользователь запросит элемент с номером 100 000 000 000 ?

Добавлено через 1 минуту
Однако, тут может помочь еще то, что длина k "кусков" = k*(k+1)/2
0
1 / 1 / 1
Регистрация: 16.04.2017
Сообщений: 45
17.11.2017, 14:01
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
using namespace std;
 
int valueOf(int n)
{
  int k = 1;
  while(n > k)
  {
    n -= k;
    k++;
  }
  return n;
}
 
int main() {
  int n = 1488;
  cout << valueOf(n) << endl;
 
  return 0;
}
0
 Аватар для COKPOWEHEU
4079 / 2677 / 432
Регистрация: 09.09.2017
Сообщений: 11,888
17.11.2017, 15:15
Немного матана и решение сложности О(1)
C
1
2
3
4
5
6
7
8
9
10
11
12
#include <stdio.h>
#include <math.h>
 
int main(){
  int n;
  int k, max;
  scanf("%i", &n);
  n--;
  k = (sqrt(1+8*n)-1)/2 + 1;
  max = k*(k+1)/2;
  printf("%i\n", k+n+1-max);
}
0
848 / 651 / 323
Регистрация: 24.02.2017
Сообщений: 2,297
17.11.2017, 18:57
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
 
using namespace std;
 
int main()
{
  int N,i=0,n=1,member=0;
 
   cin>>N;
   while(1)
     {
       while(++i<=n)
         {
           member++;
           cout<<"  "<<i<<"  ";
           if(member==N)
             {
               cout<<"\n"<<i;
               system("pause>0");
               return 0;
             }
           }
       n++;
       i=0;
      }
 }
0
 Аватар для COKPOWEHEU
4079 / 2677 / 432
Регистрация: 09.09.2017
Сообщений: 11,888
17.11.2017, 22:33
По быстродействию мой вариант выигрывает. Для N=1000000000 (типы данных исправил на unsigned long long, убрал вывод промежуточных значений) это 3,6 сек вашего против 0,004 сек моего. Ответы совпадают.
0
17.11.2017, 22:38

Не по теме:

Цитата Сообщение от Байт Посмотреть сообщение
А если пользователь запросит элемент с номером 100 000 000 000
Запиливаем свой класс int, в котором может хранится число фантастической длины). И уже на этой основе решаем данную задачу. Правда там длина всё равно ограничена. Я когда писал, над этим думал... Хм, а если добавить ещё один уровень? Надо переписать.

0
 Аватар для COKPOWEHEU
4079 / 2677 / 432
Регистрация: 09.09.2017
Сообщений: 11,888
17.11.2017, 22:43
Число 12345678901 ваш вариант вообще 45 сек считал (ответ 53356). Мой все также выполняется слишком быстро чтобы система успела толком посчитать (ответ 53356), встроенный счетчик показывает от 1 до 60 мкс (наверное, из-за многозадачности системы).
Вот она сила математики!

Добавлено через 1 минуту
Цитата Сообщение от Байт Посмотреть сообщение
А если пользователь запросит элемент с номером 100 000 000 000 ?
Проверил: ответ 42709, выполнялось ~10-6 сек.
0
17.11.2017, 22:46

Не по теме:

COKPOWEHEU, вы слишком умный, идите дальше рабочий проект дописывайте. Дайте людям самим придумать решение. Или на работе давно самопальный ИИ кодит?

0
18.11.2017, 00:38

Не по теме:

Цитата Сообщение от COKPOWEHEU Посмотреть сообщение
Проверил: ответ 42709, выполнялось ~10-6 сек.
Я всегда знал, что на вас можно положиться:) И задача даже такой фантастической сложности, вам будет по силам

0
18.11.2017, 00:44

Не по теме:

Цитата Сообщение от SlavaSokolov Посмотреть сообщение
COKPOWEHEU, вы слишком умный, идите дальше рабочий проект дописывайте. Дайте людям самим придумать решение. Или на работе давно самопальный ИИ кодит?
Цитата Сообщение от Байт Посмотреть сообщение
Я всегда знал, что на вас можно положиться И задача даже такой фантастической сложности, вам будет по силам
Дайте покайфовать что нашел такое красивое решение :p :-[ :confusion:

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.11.2017, 00:44
Помогаю со студенческими работами здесь

Определение члена ряда Фибоначчи
У Дейтлов есть задача Вопросы по модификации: а) использовать double вместо int. То есть был код #include&lt;iostream&gt; ...

Определение типа члена шаблонного класса
Такая проблема. Есть шаблонный класс с членом - указателем, тип которого должен определяться в зависимости от параметра шаблона: ...

ошибка: множественное определение статического члена класса
народ помогите разобраться с проблемой вот код #ifndef BANKACCOUNT_H #define BANKACCOUNT_H #include &lt;string&gt; #include...

Нахождение n-го члена последовательности
Программу выполните с использованием цикла с предусловием и с использованием цикла с постусловием. Циклы должны быть в одном файле. Ответы...

Рекурсия: вычисление n-го члена последовательности
Требуется разработать рекурсивную функцию, возвращающую значение для вычисления n-го члена последовательности b1=5, bn+1=bn/n2+n+1 ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru