Re[13]: Золотые слитки Гериона
От: -n1l-  
Дата: 07.02.16 19:19
Оценка:
Ты так ничего и не доказал.
Ты маркируешь слитки, я делаю тоже самое.
Re[11]: Золотые слитки Гериона
От: -n1l-  
Дата: 07.02.16 19:22
Оценка:
Здравствуйте, Erop, Вы писали:

E>Здравствуйте, -n1l-, Вы писали:


N>>Здравствуйте, Erop, Вы писали:


N>>{1,2,3,4,5,6,7,8,9,10,11}

N>> 1+2+3+4 = 10
N>> 1+2+3+5 = 11
N>>{1,2,3,4,5}{6, 7, 8, 9, 10, 11}
N>> 6+1+2 = 9
N>> 6+1+3 = 10
N>> 6+1+4 = 11
N>>{1}{2,3,4}{5}{6}{7, 8, 9, 10, 11}

N>>Ну смотри. Ты показал Г 11 слитков, назвав их bar1, bar_2,.. bar_11

E>>>Дальше взвесил 3 слитка
N>> bar_6+bar_1+bar_2 = 9
N>> bar_6+bar_1+bar_3 = 10
N>> bar_6+bar_1+bar_4 = 11

N>>Смотри, перестановка bar_6 = 1; bar_1 = 2; bar_4 = 3;

N>>Даст тот же результат взвешиваний...

E>Тогда на каком-то из

E>bar_1+bar_2+bar3+bar_4
E>bar_1+bar_2+bar3+bar_5

E>мешок порвётся...


Со слитками 7 8 9 мешок тоже порвется и что?
Re[14]: Золотые слитки Гериона
От: Erop Россия  
Дата: 07.02.16 19:33
Оценка:
Здравствуйте, -n1l-, Вы писали:

N>Ты так ничего и не доказал.

Ну строго мне доказывать лень
Я там указал леммы, что типа bar1, bar2,.. bar5 содержит перестановку 1, 2,.. 5, а остальные — перестановку 6,.. 11
Это я записывал так:
{1, 2, 3, 4, 5}{6, 7, 8, 9, 10, 11}
Леммы мне доказывать лень, IMHO, они очевидны. После того, как в записи взвешиваний попалась запись леммы, она уже является доказанной. Соответственно её можно использовать в дальнейших рассуждениях...

N>Ты маркируешь слитки, я делаю тоже самое.

Я утверждаю следующее.
Если проделать те 5 взвешиваний, то не получится подобрать такую перестановку маркировок на слитках, что bar1!=1

Если ты не согласен -- предъяви перестановку, которая не рвёт мешок ни в одном из тех 5 взвешиваний...

Но есть решение из 2-х. Очень классное, кстати...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[12]: Золотые слитки Гериона
От: Erop Россия  
Дата: 07.02.16 19:34
Оценка:
Здравствуйте, -n1l-, Вы писали:

N>Со слитками 7 8 9 мешок тоже порвется и что?


А при верной маркировке, не порвётся ни на одном из 5...
Ну и ещё есть сколько-то маркировок, при которых тоже не порвётся, но все они обладают тем свойством, что bar_1 = 1...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[13]: Золотые слитки Гериона
От: -n1l-  
Дата: 07.02.16 19:38
Оценка:
Ну у меня при верной маркировке тоже все сходится.
Re[14]: Золотые слитки Гериона
От: Erop Россия  
Дата: 07.02.16 19:45
Оценка:
N>Ну у меня при верной маркировке тоже все сходится.

А надо, что бы при любой, где bar_1 != 1 не сходилось...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[3]: Золотые слитки Гериона
От: Буравчик Россия  
Дата: 07.02.16 22:08
Оценка: +1
Здравствуйте, Кодт, Вы писали:

К>Я знаю решение из 2 взвешиваний

К>(UPD. убрал спойлер)

Я тоже нашел за 2 взвешивания!
Если бы ты не сказал, что оно существует, не нашел бы...
Best regards, Буравчик
Re[4]: Золотые слитки Гериона
От: Кодт Россия  
Дата: 07.02.16 22:11
Оценка:
Здравствуйте, Буравчик, Вы писали:

Б>Я тоже нашел за 2 взвешивания!

Б>Если бы ты не сказал, что оно существует, не нашел бы...

Чорт. Плохо убрал спойлер

Ну и по правде сказать, я встал на плечи гигантов: посмотрел, какие неверные ответы были в комментариях у Кнопа, и понял, какую возможность они там не использовали.
Перекуём баги на фичи!
Отредактировано 07.02.2016 22:15 Кодт . Предыдущая версия .
Re[5]: Золотые слитки Гериона
От: Буравчик Россия  
Дата: 07.02.16 22:20
Оценка: 15 (1)
Здравствуйте, Кодт, Вы писали:

К>Здравствуйте, Буравчик, Вы писали:


Б>>Я тоже нашел за 2 взвешивания!

Б>>Если бы ты не сказал, что оно существует, не нашел бы...

К>Чорт. Плохо убрал спойлер


Блин... Если бы ты не сказал, что ты плохо убрал спойлер, я не догадался бы сейчас посмотреть твое решение

К>Ну и по правде сказать, я встал на плечи гигантов: посмотрел, какие неверные ответы были в комментариях у Кнопа, и понял, какую возможность они там не использовали.


А я написал программу, которую хотел Егор.
Потом посмотрел твой пост про два взвешивания.
И потом (после пятой попытки) запуска программы получил наконец нормальный вариант.
Best regards, Буравчик
Re[6]: Золотые слитки Гериона
От: Кодт Россия  
Дата: 07.02.16 22:41
Оценка: +1
Здравствуйте, Буравчик, Вы писали:

К>>Чорт. Плохо убрал спойлер

Б>Блин... Если бы ты не сказал, что ты плохо убрал спойлер, я не догадался бы сейчас посмотреть твое решение

Я-то имел в виду, что стёр решение, но не количество шагов.

К>>Ну и по правде сказать, я встал на плечи гигантов: посмотрел, какие неверные ответы были в комментариях у Кнопа, и понял, какую возможность они там не использовали.


Б>А я написал программу, которую хотел Егор.

Б>Потом посмотрел твой пост про два взвешивания.
Б>И потом (после пятой попытки) запуска программы получил наконец нормальный вариант.

Дык, этюд для программистов!
А покажи свою программу, что ли.
Перекуём баги на фичи!
Re[7]: Золотые слитки Гериона
От: Erop Россия  
Дата: 07.02.16 22:43
Оценка:
Здравствуйте, Кодт, Вы писали:


К>Дык, этюд для программистов!

К>А покажи свою программу, что ли.

1) +100500
2) IMHO
Автор: Erop
Дата: 07.02.16
, интереснее написать программу, которая проверяет решения...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[7]: Золотые слитки Гериона
От: Буравчик Россия  
Дата: 07.02.16 23:21
Оценка:
Здравствуйте, Кодт, Вы писали:

К>А покажи свою программу, что ли.


Да мне не жалко. Но как всегда запутано все, сделано наспех. Добавил комментариев.

Это программа для проверки решения, а не для поиска решения.

У нас даны взвешивания. Для опровержения решения пытаемся найти контрпример — такие веса слитков, которые проходят эти взвешивания и при этом слиток 1кг будет иметь другой вес. Проверяются все перестановки весов слитков (11! вариантов). Выводится "ок" или контрпример — как надо поменять веса.

import qualified Data.Map as Map
import Data.List


-- список взвешиваний
actions = 
    [ [1, 2, 3, 4]
    , [1, 2, 3, 5]
    , [1, 2, 6]
    , [1, 3, 6]
    , [1, 4, 6]
    ]
    
-- запускаем
main = find_kontrprimer actions of
    Nothing     -> putStrLn "ok"
    Just mapper -> putStrLn $ "bad solve\n" ++ show mapper



-- максимальный вес, который выдерживает мешок
bag_max_weight = 11

-- слитки
boxes = [1..11]

-- проверка, что мешок не порвется
bag_unhurt acts = all (<= bag_max_weight) $ map sum acts

-- перестановка слитков во взвешиваниях
convert_boxes acts mapper = map (map (mapper Map.!)) acts

-- список перестановок весов слитков, список словарей (старый вес => новый вес)
mappers = [ Map.fromList $ zip boxes new_boxes | new_boxes <- permutation boxes]

-- проверка, что данная перестановка является контрпримером для взвешиваний
-- т.е. при всех взвешиваниях мешок не порвался и это стало возможным когда слиток 1 имеет вес отличный от 1кг
is_kontrprimer mapper acts = (mapper Map.! 1 /= 1) && (bag_unhurt $ convert_boxes acts mapper)

-- поиск контрпримера
find_kontrprimer acts = find is_kontrprimer mappers


UPDATE: сделал небольшой рефакторинг, чтоб понятней было
Best regards, Буравчик
Отредактировано 08.02.2016 8:36 Буравчик . Предыдущая версия . Еще …
Отредактировано 07.02.2016 23:59 Буравчик . Предыдущая версия .
Отредактировано 07.02.2016 23:24 Буравчик . Предыдущая версия .
Re[8]: Золотые слитки Гериона
От: Буравчик Россия  
Дата: 07.02.16 23:27
Оценка:
Здравствуйте, Erop, Вы писали:

E>2) IMHO
Автор: Erop
Дата: 07.02.16
, интереснее написать программу, которая проверяет решения...


Ты имел ввиду наоборот? Интереснее программа, которая ищет решения (или доказывает невозможность).
Best regards, Буравчик
Re[9]: Золотые слитки Гериона
От: Erop Россия  
Дата: 07.02.16 23:44
Оценка:
Здравствуйте, Буравчик, Вы писали:

Б>Ты имел ввиду наоборот? Интереснее программа, которая ищет решения (или доказывает невозможность).


Про доказывает невозможность — самая интересная.

А вот та, которая проверяет хитрее, той, которая ищет...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.