На этом форуме отвечают на конкретные вопросы. Фраза «я не понимаю, как решать» — это не вопрос. На вопрос «как решить задачу №X» вас отошлют к материалам сайта kpolyakov.spb.ru. За бессвязный поток слов и неспособность формулировать свои мысли — бан.

Если у вас не сходится ответ на какую-то задачу, пожалуйста сразу представляйте свое «правильное» решение.
Программы "заворачивайте" в тэг [pre2]...[/pre2], при этом сохраняются все отступы и применяется моноширинный шрифт. Если у вас используется сочетание "[i]" для обозначения элемента массива или строки, ставьте пробел после открывающей скобки. Иначе система выделит все дальнейшее курсивом.

Для регистрации на форуме щелкните по ссылке «Вход-регистрация» вверху страницы. В открывшееся окошко «ник» введите свою фамилию на русском языке (например, Иванов). В окошко «пароль» введите придуманный вами пароль, состоящий из латинских букв и цифр. Поставьте галочку в окошке «зарегистрироваться, я новый участник» и нажмите кнопку «ОК».

АвторСообщение



Не зарегистрирован
ссылка на сообщение  Отправлено: 27.05.12 17:11. Заголовок: [C3] Пример решения


Здравствуйте! Можете ли указать в моём решении некоторые упущения или ошибки, и потянет ли это решение хотя бы на 2 балла?
Обращаюсь сюда из-за безысходности, так как в моём небольшом городке нет нормального учителя по информатике, приходится учиться "онлайн". Заранее благодарю.

C3-9 (задание из вашего сборника).

У исполнителя Калькулятор три команды, которым присвоены номера:
1. прибавь 1
2. прибавь 3
3. умножь на 4
Сколько есть программ, которые число 1 преобразуют в число 18? Ответ обоснуйте.


1) Заметим, что все команды увеличивают число, значит рассматриваем только числовой отрезок [1;18].
2) Обозначим K(n) как количество программ для получения числа n.
3) Очередное число n можно получить через программы, последней командой которого является +1 | +3 | *4.
4) Таким образом, K(n) есть сумма K этих трёх программ (исключая третий случай, когда число не делится на 4).
5) Для вычисления очередного K(n) есть две рекуррентные формулы:
a) K(n) = K(n-1) + K(n-3) [когда число не кратно 4].
b) K(n) = K(n-1) + K(n-3) + K(n/4) [когда число кратно 4].
6) Построим таблицу нахождения K(n):
{тут идёт таблица, 18 столбцов, 2 строки, n и K(n) , ответ 572}
Для n<4 формулы неприменимы, так что заполним вручную.
K(1)=1 (пустая команда)
K(2)=1 (1+1)
K(3)=1 (1+1+1)

Ответ: 572.

PS. Знаю, что осталось мало времени, готовиться начал всего с марта, но на сегодняшний день дошел до C3 и появились вопросы.

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 3 [только новые]





Сообщение: 1
ссылка на сообщение  Отправлено: 27.05.12 17:18. Заголовок: извиняюсь, а разве в..


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

Спасибо: 0 
ПрофильЦитата Ответить
Администратор




Сообщение: 364
ссылка на сообщение  Отправлено: 27.05.12 17:38. Заголовок: deaidko пишет: Может..


deaidko пишет:
 цитата:
Можете ли указать в моём решении некоторые упущения или ошибки

Мысли правильные. Ваше решение, по крайней мере, на 2 балла. Скорее всего - на 3.
Пункт 4 написан корявым русским языком, сложно понять.
Очередное число можно получить командой "+1" - для всех, больших 1; командой "+3" - для всех, больших 3; и командой "*4" - для всех, кратных четырём. Других вариантов нет, поэтому мы рассмотрели все возможные программы. Желательно, чтобы эта фраза прозвучала.


___________________________________________________
Имей мужество пользоваться собственным умом. (И. Кант)
Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
ссылка на сообщение  Отправлено: 06.06.12 19:24. Заголовок: здравствуйте,моя зад..


здравствуйте,моя задача была такой: 2 команды: 1)увеличивает на 1
2) увеличивает все цифры в числе на 1(кроме чисел,оканчивающихся на 9),сколько вариантов получения из числа 14 число 37
мое решение:
1)Заметим,что число увеличивается при выполнении любой команды
2) Разберем простые случаи.
Для числа 15 существует 1 программа,14+1=15,аналогично для чисел 16,17,18..24
Для числа 25 существует 2 программы 14+11=25 и 24+1=25,аналогично для чисел 26,27,28,29,31...37
3)Таким образом получаем,что для чисел 14-24,30 имеем Кn=K(n-1)
а для чисел 25-29,31-37 имеем Kn=K(n-1)+K(n-11)
Заполним вручную таблицу с 25 по 37(так как для чисел 14-24 имеется только 1 программа)
25-2
26-3
27-4
28-5
29-6
30-6
31-7
32-8
33-9
34-10
35-11
36-13
37-16

Ответ: 16

за это мне поставили 1 балл,стоит ли идти на апелляцию?(заранее прошу прощение,если написал не в ту тему)

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 1919
Права: смайлы да, картинки да, шрифты нет, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет