żeniec napisał(a): No i jest, niczego nie trzeba iterować, tylko ponumerować też myszy. Pierwsza myszka pije z butelek 1-500, druga 1-250 i 501-750, itd. Wnioskujemy która butelka była trefna na podstawie numerów myszek, które umarły, a nie kolejności umierania.
Zadnych "itd", tutaj konkretnie trzeba. Każda mysz wypija połowę butelek, ale każda według innego wzoru. Gdyby butelek było tylko cztery, pierwsza mysz piłaby 1+2, druga 1+3. Dla matrycy dwuwymiarowej to starczy, otrzymujemy więc:
1,2
3,4
Jeżeli więc przykładowo zdechną obie myszy, to dla zadania początkowego (jedna butelka zatruta) wyrzucamy nr. 1. A jeżeli nie zdechnie żadna, to butelkę 4.
Dla zadania rozszerzonego (liczba nieokreślona) i dwóch zdechniętych myszy wyrzucamy 1,2,3. Dodajmy też, że brak sprawdzenia butelki nr. 4 w powyższym przykładzie stanowi o słabości tej metody, musimy ją wyrzucać zawsze. Albo sprawdzić dodatkową myszą.
Podobnie jest w Twojej wersji od 1 do 1000. Dla zadania początkowego Twoja metoda nie różni się od metody binarnej, poza szczególną cechą, że ostatnia butelka nie będzie sprawdzana. Stosujemy warunek AND dla zbiorów. Jeżeli zdechnie 10 myszy, wyrzucamy butelkę nr. 1, jeżeli żadna, butelkę nr. 1000. Schody zaczynają się przy zadaniu rozszerzonym. Butelkę 1000 należy wyrzucić lub sprawdzić dodatkową (jedenastą) myszą. Lub w jakiś inny sposób zmienić metodę "połowienia połowienia" (przy standardowym nr 1000 jest zawsze butelką nietestowaną). Obowiązuje warunek OR dla zbiorów, tylko klasyfikowanie jest trudniejsze. Przy 9 zdechłych myszach prawdopodobnie zostanie tylko jedna butelka (999), w zależności od konkretnej metodyki podziału.
Cytat:To też rozwiązuje bercie04 wątpliwości Twoje wątpliwości w wariancie z jedną butelką.
Metoda funkcjonuje dla jednej butelki bez zarzutu jako wariant metody binarnej.
Cytat:Co do zagadki - foton?
Nie, i nawet nie wiem, na jakiej zasadzie miałby to być foton.
Wszystko ma swój czas
i jest wyznaczona godzina
na wszystkie sprawy pod niebem
Koh 3:1-8 (edycje własne)
i jest wyznaczona godzina
na wszystkie sprawy pod niebem
Spoiler!