imho.ws |
![]() |
![]() |
![]() |
# 62 |
Добрый фей-мод
Регистрация: 18.09.2002
Адрес: Израиль
Пол: Male
Сообщения: 4 155
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
V@nya
А ты не мог написать всё в одном посте? Или посты накручиваешь? Так это запрещено. P.S. Ты решил самые простые примеры ![]()
__________________
Фотолюбительщина Пока слова не сказаны - ничего нет. Но если они сказаны, даже то чего нет становится реальностью. |
![]() |
![]() |
# 63 |
Full Member
Регистрация: 20.07.2002
Адрес: Находка
Сообщения: 740
![]() ![]() ![]() ![]() ![]() ![]() |
Programmer, посты я не накручиваю, просто как решу пример, сразу кидаю решение, чтобы быть первым.
sqrt(4)+sqrt(4)+sqrt(4)=6 sqrt(9)*sqrt(9)-sqrt(9)=6 куб.корень(8)+куб.корень(8)+куб.корень(8)=6 5+5/5=6 7-7/7=6 Первый как решать сам не додумался, и глянул ответ. (остальное чесно решал сам). |
![]() |
![]() |
# 64 | |
Добрый фей-мод
Регистрация: 18.09.2002
Адрес: Израиль
Пол: Male
Сообщения: 4 155
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Цитата:
__________________
Фотолюбительщина Пока слова не сказаны - ничего нет. Но если они сказаны, даже то чего нет становится реальностью. |
|
![]() |
![]() |
# 67 | |
Добрый фей-мод
Регистрация: 18.09.2002
Адрес: Израиль
Пол: Male
Сообщения: 4 155
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Цитата:
![]()
__________________
Фотолюбительщина Пока слова не сказаны - ничего нет. Но если они сказаны, даже то чего нет становится реальностью. |
|
![]() |
![]() |
# 68 |
Junior Member
Регистрация: 16.04.2004
Сообщения: 53
![]() |
Еще одна задачка
Есть лестница N ступенек по ней поднимаеться человек, может наступить на следующую ступеньку, через одну ступеньку, и через две (случайным образом) Нужно посчитать количество вариантов которыми он может подняться на верх. Для N = 4 1 1 1 1 2 1 1 1 2 1 1 1 2 2 2 3 1 1 3 И того семь вариантов подняться... Последний раз редактировалось Vellion; 15.05.2004 в 20:38. |
![]() |
![]() |
# 69 |
Guest
Сообщения: n/a
|
Если неправильно - поправьте
![]() Всего N ступенек и 3 способа подняться с каждой из них на следующую: 3^n вариантов. Но при поднятии через одну или две ступеньки мы теряем соответственно 1 или 2 варианта. Так как все способы распределены равномерно, то: (3^n) - (n/3)*2 - (n/3)*1. Насчет равномерности я соврал ![]() (3^n) - (n/3)*2 - (n/3)*1 - 2 - 1. Вроде так, или в конце рабочего дня я уже не соображаю ![]() |
![]() |
# 73 |
Member
Регистрация: 25.08.2003
Сообщения: 280
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
а для n-ого количества ступенек пусть думает кампутер...
var a,b,c,n:=integer; begin readln(n); for a:=0 to n do for b:=0 to n div 2 do for c:= 0 to n div 3 do if a + 2*b + 3*c = n then step:=step+1; writeln(step); end. если не прав, поправьте ![]() |
![]() |
![]() |
# 75 |
Добрый фей-мод
Регистрация: 18.09.2002
Адрес: Израиль
Пол: Male
Сообщения: 4 155
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Vellion
Давай ответ, не томи. ![]()
__________________
Фотолюбительщина Пока слова не сказаны - ничего нет. Но если они сказаны, даже то чего нет становится реальностью. |
![]() |
![]() |
# 76 |
Full Member
Регистрация: 19.07.2003
Адрес: Israel
Сообщения: 924
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
а так?
Код:
int NumberOfRoutes = 0; function void countRoutes(int cur) { if (cur == N) { NumberOfRoutes++; return; } if(cur+1<=N) countRoutes(cur+1); if(cur+2<=N) countRoutes(cur+2); if(cur+3<=N) countRoutes(cur+1); }
__________________
Столько дел, что и работой занятся некогда... |
![]() |
![]() |
# 77 |
Junior Member
Регистрация: 16.04.2004
Сообщения: 53
![]() |
int a, b, c, k;
k = 0; for (b = 0; b <= N / 2; b++) for (c = 0; c <= (N - b*2) / 3; c++) { a = N - b*2 - c*3; k += (a + b + c)! / (a! * b! * c!) } Ну самособой это будет работать только для не большик N т.к. int у нас ограничен. А так вместо переменной k результат можно представить в виде массива, и работать уже с масивом. To joker99 У тебя там вроде опечатка if(cur+3<=N) countRoutes(cur+1); помоему должно быть if(cur+3<=N) countRoutes(cur+3); Тогда считает. Последний раз редактировалось Vellion; 16.05.2004 в 13:33. |
![]() |
![]() |
# 79 |
Full Member
Регистрация: 19.07.2003
Адрес: Israel
Сообщения: 924
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Ну тогда так
Код:
int NumberOfRoutes = 0; function void countRoutes(int cur) { if (cur == N) { NumberOfRoutes++; return; } for(step = 1;step<=M;step++) { if(cur+step<=N) countRoutes(cur+step); } }
__________________
Столько дел, что и работой занятся некогда... |
![]() |
![]() |
# 80 |
Guest
Сообщения: n/a
|
Зачем делать это циклами? Я понимаю, можно и рекурсию устроить, да такую, чтоб с переполнением стека, но ведь есть же формулы для решения подобных задач, чтобы не городить потом огород.
Я облажался, т.к. формулы этой не помню. Но это не значит, что ее нет ![]() Последний раз редактировалось ARTi; 24.05.2004 в 18:06. |