FAQ по форумуНовые сообщения на Форуме
  • Страница 3 из 3
  • «
  • 1
  • 2
  • 3
13 монет - 6
freewsДата: Сб, 29.06.13, 23:33 | Сообщение # 21
Знаток
Сообщений: 27
Награды: 9
Совы: 3
2 Kreativshik
Согласен, есть ошибка в логике взвешиваний, буду думать дальше.

Ваш поиск так же не верен, или я его не до конца понял.
Привожу пример. Монеты лежат в следующей последовательности масс:
10,1,2,3,4,5,6,7,8,9,13,12,11
1) взвешиваем монету №1 - 10 (10 это вес)
2) взвешиваем монету №(1+5) - 5 - максимальная монета №1
3) взвешиваем монету №(1+3) - 3 - максимальная монета №1
4) взвешиваем монету №(1+2) - 2 - максимальная монета №1
5) взвешиваем монету №(1+1) - 1 - максимальная монета №1
6) взвешиваем монету №(1+1) - 1 - максимальная монета №1
максимальная монета №1 массой 10, однако ближайшие к ней монеты массой 1 и 11, и это не есть
правильный ответ.
Давайте думать дальше... (или укажите если я не правильно понял ваш метод).


Сообщение отредактировал freews - Сб, 29.06.13, 23:43
 
KreativshikДата: Вс, 30.06.13, 02:14 | Сообщение # 22
Гений
Сообщений: 2472
Награды: 258
Совы: 113
Начиная с третьего пункта вы ошиблись. В моем решении ясно сказано, что монеты отсчитываются в сторону наибольшего шага. Вы же считали монеты все время в сторону меньшего шага. Шаг - это расстояние между соседними взвешенными монетами. Вот давайте рассмотрим Ваш пример. Монеты расположены по кругу и имеют веса указанные вами. Вы выбрали монету вес которой оказался 10 далее мы отсчитываем пять монет в любую сторону и взвешиваем монету на которой остановили счет. В Вашем случае это монета с весом 5. Определяем среди них тяжелую,- это понятно первая монета с весом десять,- от нее в сторону большего шага(шаг меду первой и второй взвешенной монетой составляет четыре невзвешенных монеты в одну сторону, а в другую семь,- вот в эту сторону и отсчитываем) отсчитываем три монеты. Попадаем на монету с весом 13. Она имеет наибольший вес среди уже взвешенных, поэтому отсчитываем уже от нее. Как показывает алгоритм, необходимо отсчитать две монеты в сторону большего шага, в одну сторону он составляет две монеты, а в другую четыре - туда то и считаем. Отсчитываем две монеты, попадаем на монету с весом 8. Среди взвешенных больший вес понятно у какой, от нее и отсчитываем одну монету опять в сторону большего шага, попадаем соответственно на монету с весом 12. Ну и опять отсчитываем от самой тяжелой среди уже взвешенных одну монету в сторону, естественно, наибольшего шага, в одну сторону он составляет 0, а в другую 1. То бишь попадаем мы на монету с весом 9. Определяем среди взвешенных самую тяжелую, она и есть решение. Теперь надеюсь ясности в предложенный алгоритм я внес?! Выбирайте веса на ваш вкус и проверяйте алгоритм пока не надоест, он все равно будет работать как швейцарские часы, ведь математика эт наука точная. Кстати, а причем тут математика, кто знает?

Жёлтый Зелёный Красный
 
freewsДата: Вс, 30.06.13, 20:19 | Сообщение # 23
Знаток
Сообщений: 27
Награды: 9
Совы: 3
Kreativshik, спасибо, я теперь понял как все реализовано. Данный метод действительно не ищет самую тяжелую монету, а находит более тяжелую относительно двух соседних, именно так как написано в задании (и это не обязательно будет самая тяжелая монета, как повезет). Здесь для поиска монеты используется метод золотого сечения.
 
  • Страница 3 из 3
  • «
  • 1
  • 2
  • 3
Поиск:

Интересная информация
Последние задачи Сообщество эрудитов ВКонтакте Рейтинг сообщений Совиный рейтинг
1.Арнольд, да не тот21
2.Задача на подбор ответа0
3.загадка из видео на ютубе5
4.Замечание об определении ...0
5.Замечание о мантре в мето...2
6.Шофёры, художники, рыболо...1
7.Найди число19
8.Помощь с решением задачи11
9.Числовая последовательнос...20
10.А попробуйте ещё это опро...3
1.Rostislav5379
2.Lexx4728
3.nebo3639
4.Иван3061
5.никник2760
6.Kreativshik2472
7.Гретхен1807
8.Vita1524
9.erudite-man1378
10.Valet937
1.nebo123
2.Kreativshik113
3.sovetnik49
4.MrCredo38
5.IQFun30
6.Pro100_Artyom27
7.marutand20
8.хан20
9.никник15
10.Фигаро15

ГлавнаяГостевая книгаFAQОбратная связьКоллегиФорум Эрудитов