HLFX.Ru Forum Страницы (2): [1] 2 »
Показать все 16 сообщений этой темы на одной странице

HLFX.Ru Forum (https://hlfx.ru/forum/index.php)
- Флуд (https://hlfx.ru/forum/forumdisplay.php?forumid=11)
-- Задачка... (https://hlfx.ru/forum/showthread.php?threadid=996)


Отправлено Government-Man 09-11-2007 в 17:24:

Задачка...

Попросили срочно решить задачку, а у меня чего-то сегодня совсем голова не варит! =\

Даны три целых числа: n,m (1 <= n,m < 2^31) и r(1 <= r <= 40000).
Нужно написать прогу, которая находит остаток от деления n!^m! на r.

Заранее благодарен!


Отправлено zimer 11-11-2007 в 09:07:

эээ, n! - это эн факториал???

__________________
Рассыпалась соль - к ссоре.
Рассыпался сахар - к миру.
Рассыпался кокаин - к феерическим ощущениям и фантасмагорическим видениям.
Ласточки низко летают - будет дождь.
Коровы низко летают - рассыпался кокаин.


Отправлено Government-Man 11-11-2007 в 11:57:

zimer ага. ))


Отправлено MAL 11-11-2007 в 12:38:

Бгы, так в чем проблема то? =) Факториал все равно считать - будет долго. Тут ничего не поделаешь - все равно цикл или формула рекурсии.
А остаток - навярника в си есть соотвествущая фукция. Помню в универе была лаба по фортрану-90, в нем такая была =)

__________________
...Из советов молодому пловцу:
"Не плыви по течению. Не плыви против течения. Плыви туда, куда тебе надо."
Козьма Прутков.


Отправлено XaeroX 11-11-2007 в 12:43:

Блин, сумасшедшая задача...
там короче надо анализировать примерно так:
представим r как (x!+y)
заменим n!^m!/r на 1/(r/n!^m!), или 1/(x!/n!^m! + y/n!^m!)
если x<=n, то имеем
1/(1/(n!-x!)n!^(m!-1) + y/n!^m!)
если x>n, то представляем x=n+t, уменьшаем m! на 1 и рекурсивно повторяем.
со второй дробью y/n!^m! похоже: если y<=n, то имеем
1/(n!-y)^m!
если y>n, то y=n+t2, и далее рекурсивно.
А дальше может еще можно как-то сократить дроби и упростить, вынести целую часть и посчитать остаток. Но у меня уже ум за разум заходит.
Может все же тупо брут форсом?

__________________

xaerox on Vivino


Отправлено Тренсфер 11-11-2007 в 14:00:

Цитата:
XaeroX писал:
Может все же тупо брут форсом?

Я так сделал на городской олимпиаде по информатике и мне третье место за это сразу дали

__________________
Хотелось бы, чтобы не только хотелось...


Отправлено XaeroX 11-11-2007 в 14:31:

Тренсфер типа, они там были фанаты брутфорса?

__________________

xaerox on Vivino


Отправлено Тренсфер 11-11-2007 в 15:22:

Не совсем, они просто первый раз увидели что программу расписаную на страницу можно уместиь в три строки
"Это как ? Я как минимум две страницм вчера кода писал, а тут ... Это аппаратная ошибка, так быть не должно! "
Таким образом любую прогу можно написать лишь используя ввод, вывод и оператор if. Например сумма чисел:
if (a==1&&b==3)
c=4;
И так далее
Просто часто на код врядли кто-то смотрит, они проверяют что бы три примера выводили нужный результат. Примеры разумеется написаны на листочке с заданием Таким образом можно не создавать программу, а лишь качественный обман. Но я решил сделать брута -если в код посмотрят -обмана нет.

__________________
Хотелось бы, чтобы не только хотелось...


Отправлено XaeroX 11-11-2007 в 15:30:

Цитата:
Тренсфер писал:
Таким образом можно не создавать программу, а лишь качественный обман

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

__________________

xaerox on Vivino


Отправлено zimer 12-11-2007 в 07:30:

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


ну-ну. ты бы на олимпиаде acm с таким подходом выступил бы =)

__________________
Рассыпалась соль - к ссоре.
Рассыпался сахар - к миру.
Рассыпался кокаин - к феерическим ощущениям и фантасмагорическим видениям.
Ласточки низко летают - будет дождь.
Коровы низко летают - рассыпался кокаин.


Отправлено XaeroX 12-11-2007 в 08:42:

zimer а что такое acm? ActiveMovie? =)

__________________

xaerox on Vivino


Отправлено zimer 12-11-2007 в 09:15:

Association for Computing Machinery
проводит международные олимпиады

__________________
Рассыпалась соль - к ссоре.
Рассыпался сахар - к миру.
Рассыпался кокаин - к феерическим ощущениям и фантасмагорическим видениям.
Ласточки низко летают - будет дождь.
Коровы низко летают - рассыпался кокаин.


Отправлено Тренсфер 12-11-2007 в 11:37:

Так я ж про обман и проверку пошутил А про брут форс нет.

__________________
Хотелось бы, чтобы не только хотелось...


Отправлено zimer 12-11-2007 в 12:13:

Тренсфер на олимпиадах высокого уровня обычно очень жесткие ограничения на время работы программы, потребляемую память и тому подобное. на то они и олимпиады.
так что брутфорс там очков обычно не приносит.
А в код глядят в самую последнюю очередь, и то не всегда, ибо оценки выставляются автоматически.

__________________
Рассыпалась соль - к ссоре.
Рассыпался сахар - к миру.
Рассыпался кокаин - к феерическим ощущениям и фантасмагорическим видениям.
Ласточки низко летают - будет дождь.
Коровы низко летают - рассыпался кокаин.


Отправлено Twolifer 07-03-2009 в 06:00:

Попробую на канкуляторе!

__________________
Больше убивай-
Меньше умирай!


(Правила игры Half-Life)


Временная зона GMT. Текущее время 21:21. Страницы (2): [1] 2 »
Показать все 16 сообщений этой темы на одной странице

На основе vBulletin версии 2.3.0
Авторское право © Jelsoft Enterprises Limited 2000 - 2002.
Дизайн и программирование: Crystice Softworks © 2005 - 2024