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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.01.2011, 21:26   #1
trebor
 
Регистрация: 20.06.2010
Сообщений: 7
Смущение Thank you.С длинной арифметикой в задаче с динамикой(пол задания сделал).Язык:Си.

PHP код:
#include <stdio.h>

int rekursia(int K,int N);

int main()  {
    
int K,N;
    
long n;
    
/*(freopen("input.txt","r",stdin); /*перенаправление потоков для  
    freopen("output.txt","w",stdout);*/ /*работы с файлами
    scanf("%d %d",&K,&N);
    n=rekursia(K,N);
    printf("%d\n",n);
    


}

int rekursia(int K,int N)  { /* собственно сама функция
    if (N<0) 
        return 0;
    if(N==0)
        return 1;
    if(N==1) 
        return 1;
    return 2*rekursia(K,N-1)-rekursia(K,N-K-1);
    


Текст задачи:

В нашем зоопарке появился заяц. Его поместили в клетку, и чтобы ему не было скучно, директор зоопарка распорядился поставить в его клетке лесенку. Теперь наш зайчик может прыгать по лесенке вверх, перепрыгивая через ступеньки. Лестница имеет определенное количество ступенек N. Заяц может одним прыжком преодолеть не более К ступенек. Для разнообразия зайчик пытается каждый раз найти новый путь к вершине лестницы. Директору любопытно, сколько различных способов есть у зайца добраться до вершины лестницы при заданных значениях K и N. Помогите директору написать программу, которая поможет вычислить это количество. Например, если K=3 и N=4, то существуют следующие маршруты: 1+1+1+1, 1+1+2, 1+2+1, 2+1+1, 2+2, 1+3, 3+1. Т.е. при данных значениях у зайца всего 7 различных маршрутов добраться до вершины лестницы.

Входные данные

В единственной строке входного файла INPUT.TXT записаны два натуральных числа K и N (1 ≤ K ≤ N ≤ 300). К - максимальное количество ступенек, которое может преодолеть заяц одним прыжком, N – общее число ступенек лестницы.

Собственно сама алгоритм: F(K,N)=2*F(K,N-1)-F(K,N-K-1).

Помогите, пожалуйста, с длинной арифметикой, желательно, чтобы использовался целочисленный массив.(потому как при больших K и N ответ не влазит ни в какой тип данных).

Премного благодарен.
trebor вне форума Ответить с цитированием
Старый 05.01.2011, 15:02   #2
trebor
 
Регистрация: 20.06.2010
Сообщений: 7
По умолчанию

up theme, please
trebor вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужно завтра сдавать лабораторную. Я не сделал 3 задания и не знаю, как их делать bwitcher Помощь студентам 5 10.06.2010 00:02
Помогите с длинной арифметикой! Марина* Паскаль, Turbo Pascal, PascalABC.NET 1 06.06.2009 21:29