/
khazov
/
module2
Обзор
Документация
Войти
/
khazov
/
module2
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
3_task_2_2/task_2_2.cpp
48 строк
1 KB
KhazovAV
добавлены задачи по поиску и сортировке
06 авг 2026, 14:16
06 авг 2026, 14:16
b97dda2
Код
Авторство
О чём код?
// Функция для вычисления n-го числа Фибоначчи с помощью ДП // Сложность по времени: O(n) // Сложность по памяти: O(n) #include <Windows.h> #include <iostream> #include <vector> using namespace std; long long fibonacci(int n) { if (n == 0) return 0; if (n == 1) return 1; vector<long long> dp(n + 1); // Создаем вектор для хранения промежуточных результатов. dp[0] = 0; dp[1] = 1; // Заполнение таблицы динамического программирования for (int i = 2; i <= n; ++i) dp[i] = dp[i - 1] + dp[i - 2]; return dp[n]; } int main() { int n; SetConsoleCP(1251); SetConsoleOutputCP(1251); do { cout << "Введите номер числа Фибоначчи (n): "; cin >> n; if (n <= 0) cerr << "Ошибка ввода. Пожалуйста, введите целое число больше 0." << endl; } while (n <= 0); long long result = fibonacci(n); cout << "F(" << n << ") = " << result << endl; return EXIT_SUCCESS; }