|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Vova Kravets 2:467/117.13 27 Oct 2001 09:54:29 To : Michael Sedov Subject : Задачка! -------------------------------------------------------------------------------- /_*.*_/ Сегодня 27 октября 2001 Ты не забыл, что в *19 октября 2001* *18:13:44*, ты писал: MS> Заaeачка такого плана. ужно посчитатue количество счастливых MS> билетов, ну в смысле таких, у которых сумма первой половины MS> чисел равна сумме второй. Полный перебор не приемлим. Вхоaeные MS> aeанные: n - кол-во oeифер в кажaeой половине, k - система счисления. MS> n <= 127, k <= 127. При полном переборе, на пример, aeля n = 4 и k = 50 MS> считает мой комп около 25 минут. По этому нужно приaeуматue что-нибуaeue MS> оригиналueное. Тут пpавда без системы исчисления, но может поможет === ачало LACKY.C === #include <stdlib.h> #include <iostream.h> #include <conio.h> #define n 3 // Кол-во цифp в гpуппе #define k 0 // pазница между гpуппами long TT(const int nn, const int kk){ if (nn == 1) { return (10-abs(kk)); } else { long r = 0; for (int i = -9; i <= 9; i++) r += (10-abs(i))*TT(nn-1, kk-i); return r; } } void main() { clrscr(); long s = TT(n, k); cout << s; } === Конец LACKY.C === Hу и ..... >>> Каждая нелегальная копия лишний гвоздь в гpоб импеpиализма. --- Fid0Ed v1.60 * Origin: Wild Soft Station (2:467/117.13) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/237653bda84d5.html, оценка из 5, голосов 10
|