Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.
Nástěnka
❗22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
❗04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
❗23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.
Nejste přihlášen(a). Přihlásit
Hezké zatažené dopoledne,
nedávno jsem řešil a snad i úspěšně vyřešil slavnou úlohu s třinácti mincemi, kde má jedna z nich odlišnou hmotnost (nevíme, zda-li je těžší či lehčí) a máme k dispozici tři vážení na rovnoramenných váhách k tomu, abychom ji indentifikovali. Protože mi to trvalo tak pět hodin čistého času urputného přemýšlení, nic hezkého to o mém intelektu nevypovídá. Nicméně mne napadlo, jestli by bylo možné vytvořit jednoduchý algoritmus či vzoreček, který by po zadání počtu mincí vyplivl minimální počet vážění, které je potřeba na nalezení mince se 100% jistotou. Jsa nevzdělaný laik jen s maturitou ani nevím, kde bych začal, ale třeba by to někdo vyřešit dokázal.
Offline
Algoritmus:
Mince: 1,2,3,4,5,6,7,8,9,10,11,12,13
X - dobrá mince
Y - falešná mince
I.
if (1,2,3,4)=(5,6,7,8) go to II else go to VI
{ if (1,2,3,4)<(5,6,7,8) or (1,2,3,4)>(5,6,7,8) go to VI}
II
1,2,3,4,5,6,7,8 = X
if (9,10,11)=(X,X,X) go to III else go to IV
{ if (9,10,11)<(X,X,X) or (9,10,11)>(X,X,X) go to IV }
III
9,10,11 = X
if (12)=(X) then 13=Y
else 12=Y
IV
12,13 = X
if (9)=(10) then 11=Y else go to V
V
11=X
if [(9)<(10) and (9,10,11)<(X,X,X) ] or [(9)>(10) and (9,10,11)>(X,X,X) ] then 9=Y
else 10=Y
VI
9,10,11,12,13 = X
if (1,2,3,5)=(4,X,X,X) go to VII else go to IX
{ if (1,2,3,5)<(4,X,X,X) or (1,2,3,5)>(4,X,X,X) go to IX }
VII
1,2,3,4,5 = X
if (6)=(7) then 8=Y else go to VIII
VIII
if (6)=(X) then 7=Y else 6=Y
IX
6,7,8 =X
if [(1,2,3,5)<(4,X,X,X) and (1,2,3,4)<(5,6,7,8)] or [(1,2,3,5)>(4,X,X,X) and (1,2,3,4)>(5,6,7,8)] go to XI else go to XIII
XI
4,5=X
if (1)=(2) then 3=Y else go to XII
XII
3=X
if [(1,2,3,5)<(4,X,X,X) and (1)<(2)] or [(1,2,3,5)>(4,X,X,X) and (1)>(2)] then 1=Y else 2=Y
XIII
if (4)=(X) then 5=Y else 4=Y
Offline
↑ kerajs:
Ahoj, ono bylo požadováno zadat libovolný počet mincí, ne jen 13.
Offline