Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Програмка в С++

Ответить
Настройки темы
Програмка в С++
Lich Na Crul


Сообщения: n/a

Профиль | Цитировать


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

вот текст задания(сори если коряво - переводил с украинского)

Написать програму для опредиления количества 2*N -значных билетов, у которых
сума первых N десятичных цифр равняется суме N последних цифр; N –
произвольное натуральное число.

Отправлено: 02:09, 12-08-2004

 
Lich Na Crul


Сообщения: n/a

Профиль | Цитировать


ну хоть кто-нибуть отзовитесь....

Отправлено: 21:24, 12-08-2004 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


редкий гость


Сообщения: 1696
Благодарности: 44

Профиль | Сайт | Отправить PM | Цитировать


Вообще говоря, не хорошо просить написать программу других людей. Я даже подумывал вчера закрыть тему... Но сегодня я ехал в метро и всё равно не о чем было думать, так что вот результат моих теоретических изысканий.

Идея проста как помидор: надо найти количество всех комбинаций из N цифр соответствующих каждой из возможных сумм. Суммы будут лежать в пределах от 0 (N нулей) до 9*N (N девяток). Ответом очевидно будет являться[pre]9*N
_
\
/_  S[[N]][[i]]^2
i=0[/pre]где S[[N]][[i]] - количество комбинаций из N цифр соответствующих сумме i.

Далее, очевидно, что S[[1]][[0]] = S[[1]][[1]] = ... = S[[1]][[9]] = 1.

К любой комбинации из k-1 одной цифры можно дописать одну цифру x от 0 до 9. Она, соответственно, увуличит значение суммы этой комбинации на x.

Тогда алгоритм вычисления s[[k]] по s[[k-1]]:
Код: Выделить весь код
// заранее обнуляем S[[k]]
Для i от 0 до 9*k:
    s[[k]][[i]] = 0
// Перебираем все цифры, которые можно дописать
Для x от 0 до 9:
    // Перебираем все возможные суммы для комбинаций из k-1 цифры
    Для i от 0 до (k-1)*9:
        // После того как допишем цифру x сумма i увеличится на x
        // значит все комбинации, которые раньше давали в сумме i
        // теперь (после того как приписали x) будут давать сумму i+x
        // Значит к количеству комбинаций длины k дающих  в сумме i+x
        // можно добавить количество комбинаций длинны k-1,
        // сумма которых даёт i
        s[[k]][[i+x]] += s[[k-1]][[i]]
Это надо повторять до тех пор пока k не сравняется с N. А после этого уже можно вычислять конечный результат по вшеприведённой формуле.

Динамическое программирование во всей красе.

Если не понятно, прошу прощения. У меня всегда были проблемы с объяснением решений даже простых задач.

-------
http://ivank.ru


Отправлено: 18:56, 13-08-2004 | #3

Lich Na Crul


Сообщения: n/a

Профиль | Цитировать


да действительно не понятно...
но всёравно спасибо... буду разбиратся...

Отправлено: 01:49, 14-08-2004 | #4


редкий гость


Сообщения: 1696
Благодарности: 44

Профиль | Сайт | Отправить PM | Цитировать


А что конкретно непонятно? Откуда взялась формула для результата, как считается s[[k]][[i]] или что-то ещё?

-------
http://ivank.ru


Отправлено: 16:26, 14-08-2004 | #5



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » Програмка в С++

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Програмка для выбора цвета FlatX007 AutoIt 13 28-06-2009 21:16
Програмка для монтирования в windows .... INTELLIGENTIK Программное обеспечение Linux и FreeBSD 2 13-03-2007 14:36
Что за програмка ISTSVC SimSim Защита компьютерных систем 4 26-09-2005 11:35
Програмка для CD-RW... Guest Хочу все знать 8 29-04-2004 22:33
нужна програмка... Kpa6 Мобильные ОС, смартфоны и планшеты 2 03-03-2004 14:52




 
Переход