Програмка в С++
|
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
|
Профиль | Сайт | Отправить 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]] Динамическое программирование во всей красе. Если не понятно, прошу прощения. У меня всегда были проблемы с объяснением решений даже простых задач. |
------- Отправлено: 18:56, 13-08-2004 | #3 |
Lich Na Crul
Сообщения: n/a |
да действительно не понятно...
но всёравно спасибо... буду разбиратся... |
Отправлено: 01:49, 14-08-2004 | #4 |
редкий гость Сообщения: 1696
|
Профиль | Сайт | Отправить PM | Цитировать А что конкретно непонятно? Откуда взялась формула для результата, как считается s[[k]][[i]] или что-то ещё?
|
|
------- Отправлено: 16:26, 14-08-2004 | #5 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Програмка для выбора цвета | 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 |
|