|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
12.01.2012, 19:30 | #1 |
Пользователь
Регистрация: 22.01.2011
Сообщений: 11
|
Мандарины. Остатки от делений.
На праздник 8 марта ребята решили сделать подарки девушкам. Готовя подарки, они разложили в каждый подарок по открытке и по мягкой игрушке. А когда начали раскладывать мандарины, то возникло осложнение. Сначала они разложили мандарины по m штук в каждый пакет (в другие пакеты - яблоки), оказалось, что в одном из пакетов m - 1 мандарин, когда положили по m - 1 мандарин, осталось m - 2, попытались положить по m - 2 мандарин , осталось m - 3, и т.д., когда попытались положить по 2 мандарина, то остался 1 мандарин. Какую же количество мандарин закупили ребята?
Код:
|
13.01.2012, 17:50 | #2 |
Пользователь
Регистрация: 22.01.2011
Сообщений: 11
|
есть идеи?
|
26.03.2012, 16:22 | #3 |
Новичок
Джуниор
Регистрация: 26.03.2012
Сообщений: 9
|
|
26.03.2012, 17:35 | #4 | |
Участник клуба
Регистрация: 30.01.2011
Сообщений: 1,578
|
подправил малость код...
Код:
Цитата:
пишу код не только за печеньки
|
|
27.03.2012, 13:31 | #5 | ||||
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
ответы получаются такие: Цитата:
Код:
ещё есть решение (с) Puporev отсюда Код:
ну и обсуждение этой задачи можно посмотреть: Тут или тут (хотя в этой теме путаников и путаницы много) а по сути всё просто, нужно найти НОК от чисел (1,2,3, m-1) от полученного НОК нужно вычести единичку. и это будет ответом на задачу. НО! но проблема в том, что если рассматривать эту задачу как олимпиадную (смотри условие задачи - "Подарки к 8 Марта"), то там задано ограничение на входные данные: Цитата:
Цитата:
|
||||
27.03.2012, 14:20 | #6 | |
Участник клуба
Регистрация: 30.01.2011
Сообщений: 1,578
|
нашел недочет со своей стороны... пренебрег "и т.д."... тобишь бала лишь проверка на
Цитата:
пишу код не только за печеньки
|
|
27.03.2012, 20:33 | #7 |
Забанен
Форумчанин Подтвердите свой е-майл
Регистрация: 01.11.2006
Сообщений: 420
|
To Serge_Bliznykov
Я бы поменял две функции для быстрого вычисления в Вашей программе, сделал бы так: Код:
Если ничто другое не помогает, прочтите, наконец, инструкцию! Аксиома Кана
|
28.03.2012, 14:33 | #8 |
Забанен
Форумчанин Подтвердите свой е-майл
Регистрация: 01.11.2006
Сообщений: 420
|
При m=10 000 ответ содержит 4349 цифры, мой компьютер считает за 3.765 секунд (в программе 80 строк кода). A при m=1 000, 433 цифры в ответе, считает за 0.031 секунду.
Чуть чуть теории чисел, длинной арифметики и все. Суть алгоритма использовать каноническое разложение числа на множителичитать тут и с помощью него вычислять НОК читать тут
Если ничто другое не помогает, прочтите, наконец, инструкцию! Аксиома Кана
|
28.03.2012, 14:52 | #9 | ||
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
Цитата:
|
||
28.03.2012, 15:45 | #10 |
Забанен
Форумчанин Подтвердите свой е-майл
Регистрация: 01.11.2006
Сообщений: 420
|
Тут длинная арифметика "усеченная".
Нужно длинное число умножать на integer: Код:
Код:
Если ничто другое не помогает, прочтите, наконец, инструкцию! Аксиома Кана
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Остатки вируса | HellMercenariess | Безопасность, Шифрование | 2 | 14.09.2010 04:14 |
Как расчитать остатки в БД | Радмир4855 | Microsoft Office Access | 1 | 14.05.2010 17:51 |
Как изменить масштабные деления у графика на текстовые с сохранением этих делений. | Tidus | Microsoft Office Excel | 0 | 19.02.2010 11:26 |
Запрос: Сгруппировать остатки по периодам | Black_Guardian | SQL, базы данных | 14 | 03.08.2009 15:02 |
остатки от деления на паскале | semennn | Помощь студентам | 1 | 01.04.2009 05:32 |