В един форум попаднах на тази дискусия (взета от друг форум) във връзка с добрия стар виц за 16-битовата ламя. Ако не знаете вица - самата дискусия започва с него:
Добрият юнак отишъл да се бие с лошата ламя.
Замахнал с меча и й отсякъл главата.
На нейното място поникнали две нови глави.
Отсякъл и тях – на тяхно място поникнали четири.
Пак ги отсякъл – поникнали осем.
И тях отрязал – пораснали шестнадесет.
Сякал юнакът, сякал… а когато отсякал 65536-тата глава ламята издъхнала, защото била 16-битова.
=============================================
Re:
..по-скоро 65535-тата глава.
=============================================
Re:
Не съм съгласен…очевидно имаме bitwise rotation (1, 2, 4, 8, 16…).
В този случай ламята ще издъхне след 32768-та глава.
=============================================
Re:
Абе по-скоро ще бъде
…
След като отсякъл (1 + 2 + 4 + … + 65536)-та глаа ламята дала фира.
=============================================
Re:
Е юнака е почнал да брои от ‘1′ не от ‘0′
=============================================
Re:
Аз съм ок – юнака е почнал да брои от 1.
Предполагам че той, обаче, все пак би предпочел в тоя bitset да съществува и null елемент (0), за да може в един момент да се окаже с 0 глави
Ако ламята е била 16 битова, и ние (и най-вече юнака) държим да има репресентация на 0 глави, то тогава може да има 65536 глави
=================================================
Re:
Някой да знае какъв е точно алгоритъма за порастване на нови глави? )
=================================================
Re:
Хмм… final result is:
CODE
__int64 sum = 0;
WORD a = 1;
DWORD last_head = 0;
while (a)
{
last_head = a;
sum += a;
a = a < < 1;
}
Което ни дава сума:
sum = 65535
last_head = 32768
=============================================
Re:
Абе според мене си е баш 2^16 – 1 = 65535
1 + 2 + … + 2^15 = 2^16 – 1;
след 16-тото рязане (дето е отсякъл 2^15 глави) те са станали 2^16 = 65536 и ламята е умряла.
=================================================
Re:
Това е ламя, не хидра !!!
=================================================
Re:
Абе според гръцката митология Ламята има 1 глава, а точно Хидрата много.
=================================================
Re:
Ако ламята е била мужка. 65536 глаи е верен отговор!!!
=================================================
Re:
RTFM !
=================================================
Re:
Ламя-неламя, ама ако броиш сумата от отрязаните глави последната версия на ламята ще е с 32768 глави, а ако не я броиш – 65536.
В случая на Ивановата ламя, пича е отсякъл общо 65536 глави и тогава е умряля, което значи, че Иванов предполага, че ламята си брои отрязаните глави, което не е задължително.
PS:Не се знае и за останалите глави какъв е алгоритъма )
=================================================
Re:
ха сега сменете функцията за никнене на глави от
CODE
f(n)=2*f(n-1)
на
f’(n)=f’(n-1) + f’(n-2)
Тогава f’(n)/f’(n-1) ще клони към 1.61, за n -> +безкрайност.
Стигнахме до задачата за слатното сечение.
=================================================
Re:
Предлагам да вдигнем битовете на 32
че да има повече мегдан за дискусии. С тея 16 бита почваме да се повтаряме.
=================================================
Re:
Абе живеем във 21 век. Дайте да минем на 64 битова архитектура ? ))
=================================================
Re:
Според мен Юнака е отрязъл всичко на всичко 1 глава.
Проблемът се появил още същата вечер в селската кръччма (irish pub) когато след няколко бири, на нефо му се сторило добра идея да удвои главите (сещате се как му е хрумнал този драматичен похват)
...
Няма коментари:
Публикуване на коментар