Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
 Аватар для Collide
6 / 6 / 5
Регистрация: 02.11.2011
Сообщений: 36

k-факториал

20.11.2011, 12:46. Показов 2494. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
После того, как Вася узнал на факультативе по программированию, что такое факториал, у него опять значительно возрос интерес к математике. Решив оставить после себя след в этой науке он придумал новую операцию – мультифакториал и теперь тщательно исследует её.

Для начала он ввёл понятие простого факториала. Согласно определению Васи, простой факториал заданного числа n – это произведение всех целых чисел больших нуля, записанных начиная с заданного числа n в убывающем порядке, каждый сомножитель которого на единицу меньше предыдущего.

Вполне логично, что Вася ввел понятие 2-факториала, 3-факториала и т.д. и вообще k-факториала, которые он объединил в одно определение – мультифакториал порядка k.

Мультифакториалом порядка k Вася назвал произведение всех целых чисел больших нуля, записанных начиная с заданного числа n в убывающем порядке, каждый сомножитель которого на k меньше предыдущего.

Вот формульные представления этих терминов, придуманные Васей:

n! = n ∙ (n-1) ∙ (n-2) ∙ (n-3)...

n!! = n ∙ (n-2) ∙ (n-4) ∙ (n-6)...

n!!! = n ∙ (n-3) ∙ (n-6) ∙ (n-9)...

В общем виде формулу Вася записал так:

http://radikal.ua/data/upload/... f61c5b.jpg

Чтобы приблизить вновь созданный раздел математики к школьной жизни, Вася заинтересовался вопросом: сколько разных делителей имеет заданный мультифакториал порядка k?

Технические условия
Input

Первая строка содержит количество примеров в задании N. Единственная строка каждого примера содержит запись заданного мультифакториала. Известно, что числовая часть в его записи не превышает 1000, а порядок k – не больше 20-ти. Известно также, что в одном тестовом примере нет двух одинаковых примеров.

Output

Для каждого тестового примера вывести в отдельной строке сначала его номер: Sample i: – где i – номер примера, а далее через пробел единственное число: количество делителей полученного значения мультфакториала порядка k. Если это количество превышает 1018 Вася просит вывести придуманный им же символ бесконечности oo.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.11.2011, 12:46
Ответы с готовыми решениями:

Факториал
Всем привет. Выручайте, пожалуйста. Дочке в институте задали задачку::: Вычислить приближенно значение бесконечной суммы (справа от...

факториал!
Даны целые числа n,k(n≥k≥0). Вычислить (n(n-1)…(n-k+1))/k!

Факториал (2k)!
Можно вообще это как-то сделать без применения функции или только через неё? Можете посмотреть,правильная ли у меня функция,на практике...

3
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
20.11.2011, 15:11
Цитата Сообщение от Collide Посмотреть сообщение
Если это количество превышает 1018
наверное 10^18?
0
110 / 110 / 72
Регистрация: 13.10.2011
Сообщений: 227
20.11.2011, 16:32
Цитата Сообщение от Puporev Посмотреть сообщение
наверное 10^18?

Не по теме:

Еще один копипастер :D

0
 Аватар для Collide
6 / 6 / 5
Регистрация: 02.11.2011
Сообщений: 36
20.11.2011, 20:31  [ТС]
Вот мой код, но он очень медленный.

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
var n,l,z,k,f,q:uint64;   st,st2:ansistring;  i,j:longint;
 
function kol(n:uint64):uint64;
var z:uint64;  i:longint;
begin
z:=0;
kol:=0;
for i := 1 to n do
   if (n mod i = 0) then inc(z);
kol:=z;
end;
begin
 
 readln(n);
 for i := 1 to n do
 begin
   readln(st);
   k:=0; z:=0; l:=0; q:=0;
   for j := 1 to length(st) do
   begin
     if st[j] in ['0'..'9'] then st2:=st2+st[j];
     if st[j]='!' then inc(l);
   end;
   val(st2,z);
   k:=1;
   k:=k*z ;
   q:=l;
   while q < z do
   begin
     k:=k*(z-q);
     q:=q+l;
   end;
 
   writeln('Sample ',i,': ',kol(k));
 end;
 
end.
Добавлено через 2 минуты
Ребята, нужно что бы программа работала хоть на 0.2 сек быстрее. Моя работает за 1.014 секунды нужно строго за 1 сек, или еще меньше
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
20.11.2011, 20:31
Помогаю со студенческими работами здесь

Факториал
Помогите разобраться с факториалом (2i)!,i от 1 до 10. Смысл мне ясен,но выразить через программу не получается(именно удвоенное i)

факториал
Найти сумму ряда с точностью E(эпсион)=10-4, общий член которого: An=n!/(2n)! Помогите.

Факториал
Используя представление е^х=1+х/1+х^2/2!+x^3/3!+... вычислить значение e^x для указанного значения x(0) с точностью =0,001. ...

Факториал.
Найдите все трехзначные числа, представимые в виде сумм факториалов своих цифр, используйте рекурсивную функцию вычисления n!....

факториал
составить програмку надо,чтобы считала http://s43.***********/i102/0903/8e/5fc330271c2e.jpg помогите составить пожалуйста!


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
Программный отбор значения справочника
Maks 21.03.2026
Процедура ВодителиНачалоВыбора(Элемент, ДанныеВыбора, ВыборДобавлением, СтандартнаяОбработка) / / Отключаем стандартную обработку (стандартное открытие формы выбора без фильтров) . . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru