ΠΠ°ΠΉΡΠΈ ΡΡΠΌΠΌΡ ΡΠΈΡΠ΅Π» ΡΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ php
5 ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΡΠΈΡΠ΅Π» Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ: ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°ΠΌ ΡΠΈΡΠ»Π° Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΆΠ΅ ΠΏΠΎΠ΄Π½Π°Π΄ΠΎΠ΅ΡΡΡ. ΠΡΠΈΠΌΠ΅ΡΡ ΠΈΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π²Π΅Π·Π΄Π΅. ΠΡΡ ΠΎΡ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΡΡΠΈ ΡΠΈΡΠ»Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΏΡΠΎΡΡΠ΅ΠΉΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ΅ΠΊΡΡΡΠΈΠΈ. Π Π΅ΡΡ ΠΎΠ½ΠΈ ΡΠ²Π»ΡΡΡΡΡ Ρ ΠΎΡΠΎΡΠΈΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΌ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠΎ Π½Π°Π΄ΠΎ Π»ΠΈ Π²ΡΡΠΈΡΠ»ΡΡΡ ΠΈΡ ΡΠ°ΠΊ Π² ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅? ΠΠ΅ Π½Π°Π΄ΠΎ. ΠΠΈ ΡΠ΅ΠΊΡΡΡΠΈΡ, Π½ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π΅ ΡΠ²Π»ΡΡΡΡΡ ΠΈΠ΄Π΅Π°Π»ΡΠ½ΡΠΌΠΈ Π²Π°ΡΠΈΠ°Π½ΡΠ°ΠΌΠΈ. Π Π½Π΅ Π·Π°ΠΌΠΊΠ½ΡΡΠ°Ρ ΡΠΎΡΠΌΡΠ»Π°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠ°Ρ ΡΠΈΡΠ»Π° Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ. Π‘Π΅ΠΉΡΠ°Ρ Ρ ΡΠ°ΡΡΠΊΠ°ΠΆΡ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ. ΠΠΎ ΡΠ½Π°ΡΠ°Π»Π° ΠΏΡΠΎΠΉΠ΄ΡΠΌΡΡ ΠΏΠΎ Π²ΡΠ΅ΠΌ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠΌ Π²Π°ΡΠΈΠ°Π½ΡΠ°ΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΡ.
ΠΠΎΠ΄ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π΄Π»Ρ Python 3, Ρ ΠΎΡΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠ΄ΡΠΈ ΠΈ Π½Π° Python 2.
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° β Π½Π°ΠΏΠΎΠΌΠ½Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅:
ΠΠ°ΠΌΠΊΠ½ΡΡΠ°Ρ ΡΠΎΡΠΌΡΠ»Π°
Π Π΅ΡΠ°Π΅ΠΌ ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΠΎΠ΅ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅:
ΠΡΠΊΡΠ΄Π° ΠΈ ΡΠ°ΡΡΡΡ Β«Π·ΠΎΠ»ΠΎΡΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅Β» Ο=(1+β5)/2. ΠΠΎΠ΄ΡΡΠ°Π²ΠΈΠ² ΠΈΡΡ ΠΎΠ΄Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈ ΠΏΡΠΎΠ΄Π΅Π»Π°Π² Π΅ΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ, ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ:
ΡΡΠΎ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Π΄Π»Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ Fn.
Π₯ΠΎΡΠΎΡΠ΅Π΅:
ΠΡΡΡΡΠΎ ΠΈ ΠΏΡΠΎΡΡΠΎ Π΄Π»Ρ ΠΌΠ°Π»ΡΡ
n
ΠΠ»ΠΎΡ
ΠΎΠ΅:
Π’ΡΠ΅Π±ΡΡΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ. ΠΠ»Ρ Π±ΠΎΠ»ΡΡΠΈΡ
n ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π±ΠΎΠ»ΡΡΠ°Ρ ΡΠΎΡΠ½ΠΎΡΡΡ.
ΠΠ»ΠΎΠ΅:
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡΠ½ΡΡ
ΡΠΈΡΠ΅Π» Π΄Π»Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ Fn ΠΊΡΠ°ΡΠΈΠ²ΠΎ Ρ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ, Π½ΠΎ ΡΡΠΎΠ΄Π»ΠΈΠ²ΠΎ β Ρ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ½ΠΎΠΉ.
Π Π΅ΠΊΡΡΡΠΈΡ
Π‘Π°ΠΌΠΎΠ΅ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²Ρ ΡΠΆΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°Π· Π²ΠΈΠ΄Π΅Π»ΠΈ β ΡΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ, Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΠ΅ΠΊΡΡΡΠΈΡ. ΠΠΎΠ²ΡΠΎΡΡ Π΅Π³ΠΎ Π΅ΡΡ ΡΠ°Π·, Π΄Π»Ρ ΠΏΠΎΠ»Π½ΠΎΡΡ. Π Python Π΅Ρ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΠ°ΡΡ Π² ΠΎΠ΄Π½Ρ ΡΡΡΠΎΠΊΡ:
Π₯ΠΎΡΠΎΡΠ΅Π΅:
ΠΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠ°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ, ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠ°Ρ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅
ΠΠ»ΠΎΡ
ΠΎΠ΅:
ΠΠΊΡΠΏΠΎΠ½Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. ΠΠ»Ρ Π±ΠΎΠ»ΡΡΠΈΡ
n ΠΎΡΠ΅Π½Ρ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ
ΠΠ»ΠΎΠ΅:
ΠΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΡΠ΅ΠΊΠ°
ΠΠ°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅
Π£ ΡΠ΅ΡΠ΅Π½ΠΈΡ Ρ ΡΠ΅ΠΊΡΡΡΠΈΠ΅ΠΉ Π΅ΡΡΡ Π±ΠΎΠ»ΡΡΠ°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°: ΠΏΠ΅ΡΠ΅ΡΠ΅ΠΊΠ°ΡΡΠΈΠ΅ΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ. ΠΠΎΠ³Π΄Π° Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ fib(n), ΡΠΎ ΠΏΠΎΠ΄ΡΡΠΈΡΡΠ²Π°ΡΡΡΡ fib(n-1) ΠΈ fib(n-2). ΠΠΎ ΠΊΠΎΠ³Π΄Π° ΡΡΠΈΡΠ°Π΅ΡΡΡ fib(n-1), ΠΎΠ½Π° ΡΠ½ΠΎΠ²Π° Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΏΠΎΠ΄ΡΡΠΈΡΠ°Π΅Ρ fib(n-2) β ΡΠΎ Π΅ΡΡΡ, fib(n-2) ΠΏΠΎΠ΄ΡΡΠΈΡΠ°Π΅ΡΡΡ Π΄Π²Π°ΠΆΠ΄Ρ. ΠΡΠ»ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ ΡΠ°ΡΡΡΠΆΠ΄Π΅Π½ΠΈΡ, Π±ΡΠ΄Π΅Ρ Π²ΠΈΠ΄Π½ΠΎ, ΡΡΠΎ fib(n-3) Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ΄ΡΡΠΈΡΠ°Π½Π° ΡΡΠΈΠΆΠ΄Ρ, ΠΈ Ρ.Π΄. Π‘Π»ΠΈΡΠΊΠΎΠΌ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅ΡΠ΅ΡΠ΅Π½ΠΈΠΉ.
ΠΠΎΡΡΠΎΠΌΡ Π½Π°Π΄ΠΎ ΠΏΡΠΎΡΡΠΎ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ, ΡΡΠΎΠ±Ρ Π½Π΅ ΠΏΠΎΠ΄ΡΡΠΈΡΡΠ²Π°ΡΡ ΠΈΡ ΡΠ½ΠΎΠ²Π°. ΠΡΠ΅ΠΌΡ ΠΈ ΠΏΠ°ΠΌΡΡΡ Ρ ΡΡΠΎΠ³ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ°ΡΡ ΠΎΠ΄ΡΡΡΡΡ Π»ΠΈΠ½Π΅ΠΉΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ. Π ΡΠ΅ΡΠ΅Π½ΠΈΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ»ΠΎΠ²Π°ΡΡ, Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈ ΠΏΡΠΎΡΡΠΎΠΉ ΠΌΠ°ΡΡΠΈΠ².
(Π Python ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Π΄Π΅ΠΊΠΎΡΠ°ΡΠΎΡΠ°, functools.lru_cache.)
Π₯ΠΎΡΠΎΡΠ΅Π΅:
ΠΡΠΎΡΡΠΎ ΠΏΡΠ΅Π²ΡΠ°ΡΠΈΡΡ ΡΠ΅ΠΊΡΡΡΠΈΡ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Ρ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ΠΌ. ΠΡΠ΅Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΊΡΠΏΠΎΠ½Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π² Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠ΅, Π΄Π»Ρ ΡΠ΅Π³ΠΎ ΡΡΠ°ΡΠΈΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠ°ΠΌΡΡΠΈ.
ΠΠ»ΠΎΡ
ΠΎΠ΅:
Π’ΡΠ°ΡΠΈΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΠΌΡΡΠΈ
ΠΠ»ΠΎΠ΅:
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΡΠ΅ΠΊΠ°, ΠΊΠ°ΠΊ ΠΈ Ρ ΡΠ΅ΠΊΡΡΡΠΈΠΈ
ΠΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
ΠΠΎΡΠ»Π΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ Ρ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ΠΌ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΠΏΠΎΠ½ΡΡΠ½ΠΎ, ΡΡΠΎ Π½Π°ΠΌ Π½ΡΠΆΠ½Ρ Π½Π΅ Π²ΡΠ΅ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ, Π° ΡΠΎΠ»ΡΠΊΠΎ Π΄Π²Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ . ΠΡΠΎΠΌΠ΅ ΡΡΠΎΠ³ΠΎ, Π²ΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π½Π°ΡΠΈΠ½Π°ΡΡ Ρ fib(n) ΠΈ ΠΈΠ΄ΡΠΈ Π½Π°Π·Π°Π΄, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΠ°ΡΡ Ρ fib(0) ΠΈ ΠΈΠ΄ΡΠΈ Π²ΠΏΠ΅ΡΡΠ΄. Π£ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π° Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΠΈ β ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅. ΠΠ° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΡΠΊΠΎΡΠΎΡΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π±ΡΠ΄Π΅Ρ Π΅ΡΡ Π²ΡΡΠ΅, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΡΡ ΠΎΡΡΡΡΡΡΠ²ΡΡΡ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΠ΅ Π²ΡΠ·ΠΎΠ²Ρ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΈ ΡΠ²ΡΠ·Π°Π½Π½Π°Ρ Ρ ΡΡΠΈΠΌ ΡΠ°Π±ΠΎΡΠ°. Π ΠΊΠΎΠ΄ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΏΡΠΎΡΠ΅.
ΠΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠ°ΡΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΈΠΌΠ΅ΡΠ° Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
Π₯ΠΎΡΠΎΡΠ΅Π΅:
ΠΡΡΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π΄Π»Ρ ΠΌΠ°Π»ΡΡ
n, ΠΏΡΠΎΡΡΠΎΠΉ ΠΊΠΎΠ΄
ΠΠ»ΠΎΡ
ΠΎΠ΅:
ΠΡΡ Π΅ΡΡ Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ
ΠΠ»ΠΎΠ΅:
ΠΠ° ΠΎΡΠΎΠ±ΠΎ Π½ΠΈΡΠ΅Π³ΠΎ.
ΠΠ°ΡΡΠΈΡΠ½Π°Ρ Π°Π»Π³Π΅Π±ΡΠ°
Π, Π½Π°ΠΊΠΎΠ½Π΅Ρ, Π½Π°ΠΈΠΌΠ΅Π½Π΅Π΅ ΠΎΡΠ²Π΅ΡΠ°Π΅ΠΌΠΎΠ΅, Π½ΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅, Π³ΡΠ°ΠΌΠΎΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠ΅Π΅ ΠΊΠ°ΠΊ Π²ΡΠ΅ΠΌΡ, ΡΠ°ΠΊ ΠΈ ΠΏΠ°ΠΌΡΡΡ. ΠΠ³ΠΎ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΡΡΠΈΡΠΈΡΡ Π½Π° Π»ΡΠ±ΡΡ Π³ΠΎΠΌΠΎΠ³Π΅Π½Π½ΡΡ Π»ΠΈΠ½Π΅ΠΉΠ½ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ. ΠΠ΄Π΅Ρ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΌΠ°ΡΡΠΈΡ. ΠΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ Π²ΠΈΠ΄Π΅ΡΡ, ΡΡΠΎ
Π ΠΎΠ±ΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ Π³ΠΎΠ²ΠΎΡΠΈΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ
ΠΠ²Π° Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ x, ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ Π½Π°ΠΌΠΈ ΡΠ°Π½Π΅Π΅, ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΠΎΠ΄Π½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ»ΠΎ ΡΠΎΠ±ΠΎΡ Π·ΠΎΠ»ΠΎΡΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅, ΡΠ²Π»ΡΡΡΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΌΠ°ΡΡΠΈΡΡ. ΠΠΎΡΡΠΎΠΌΡ, Π΅ΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ Π²ΡΠ²ΠΎΠ΄Π° Π·Π°ΠΌΠΊΠ½ΡΡΠΎΠΉ ΡΠΎΡΠΌΡΠ»Ρ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΡΠ½ΠΎΠ³ΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ ΠΈ Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠΉ Π°Π»Π³Π΅Π±ΡΡ.
Π’Π°ΠΊ ΡΠ΅ΠΌ ΠΆΠ΅ ΠΏΠΎΠ»Π΅Π·Π½Π° ΡΠ°ΠΊΠ°Ρ ΡΠΎΡΠΌΡΠ»ΠΈΡΠΎΠ²ΠΊΠ°? Π’Π΅ΠΌ, ΡΡΠΎ Π²ΠΎΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΡΡΠ΅ΠΏΠ΅Π½Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΠΈΠ·Π²Π΅ΡΡΠΈ Π·Π° Π»ΠΎΠ³Π°ΡΠΈΡΠΌΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π²ΡΠ΅ΠΌΡ. ΠΡΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ ΡΠ΅ΡΠ΅Π· Π²ΠΎΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ Π² ΠΊΠ²Π°Π΄ΡΠ°Ρ. Π‘ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ
Π³Π΄Π΅ ΠΏΠ΅ΡΠ²ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΡΡΠ½ΡΡ A, Π²ΡΠΎΡΠΎΠ΅ Π΄Π»Ρ Π½Π΅ΡΡΡΠ½ΡΡ . ΠΡΡΠ°Π»ΠΎΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΡ, ΠΈ Π²ΡΡ Π³ΠΎΡΠΎΠ²ΠΎ. ΠΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄. Π― ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π» ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ pow, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π΅Ρ ΠΏΡΠΎΡΠ΅ ΠΏΠΎΠ½ΡΡΡ. ΠΡΠ΅ΡΠ°ΡΠΈΠ²Π½ΡΡ Π²Π΅ΡΡΠΈΡ ΡΠΌΠΎΡΡΠΈΡΠ΅ ΡΡΡ.
Π₯ΠΎΡΠΎΡΠ΅Π΅:
Π€ΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΎΠ±ΡΡΠΌ ΠΏΠ°ΠΌΡΡΠΈ, Π»ΠΎΠ³Π°ΡΠΈΡΠΌΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π²ΡΠ΅ΠΌΡ
ΠΠ»ΠΎΡ
ΠΎΠ΅:
ΠΠΎΠ΄ ΠΏΠΎΡΠ»ΠΎΠΆΠ½Π΅Π΅
ΠΠ»ΠΎΠ΅:
ΠΡΠΈΡ
ΠΎΠ΄ΠΈΡΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΌΠ°ΡΡΠΈΡΠ°ΠΌΠΈ, Ρ
ΠΎΡΡ ΠΎΠ½ΠΈ Π½Π΅ ΡΠ°ΠΊ ΡΠΆ ΠΈ ΠΏΠ»ΠΎΡ
ΠΈ
Π‘ΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Π±ΡΡΡΡΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ
Π‘ΡΠ°Π²Π½ΠΈΠ²Π°ΡΡ ΡΡΠΎΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ Π²Π°ΡΠΈΠ°Π½Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΌΠ°ΡΡΠΈΡΡ. ΠΡΠ»ΠΈ ΡΡΠ°Π²Π½ΠΈΠ²Π°ΡΡ ΠΈΡ ΠΏΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Ρ Π·Π½Π°ΠΊΠΎΠ² Π² ΡΠΈΡΠ»Π΅ n, ΡΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡΡ, ΡΡΠΎ ΠΌΠ°ΡΡΠΈΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎ, Π° ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ β ΡΠΊΡΠΏΠΎΠ½Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ. ΠΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ β Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠ΅ fib(10 ** 6), ΡΠΈΡΠ»Π°, Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π±ΡΠ΄Π΅Ρ Π±ΠΎΠ»ΡΡΠ΅ Π΄Π²ΡΡ ΡΠΎΡ ΡΡΡΡΡ Π·Π½Π°ΠΊΠΎΠ².
n = 10 ** 6
ΠΡΡΠΈΡΠ»ΡΠ΅ΠΌ fib_matrix: Ρ fib(n) Π²ΡΠ΅Π³ΠΎ 208988 ΡΠΈΡΡ, ΡΠ°ΡΡΡΡ Π·Π°Π½ΡΠ» 0.24993 ΡΠ΅ΠΊΡΠ½Π΄.
ΠΡΡΠΈΡΠ»ΡΠ΅ΠΌ fib_dynamic: Ρ fib(n) Π²ΡΠ΅Π³ΠΎ 208988 ΡΠΈΡΡ, ΡΠ°ΡΡΡΡ Π·Π°Π½ΡΠ» 11.83377 ΡΠ΅ΠΊΡΠ½Π΄.
Π’Π΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π·Π°ΠΌΠ΅ΡΠ°Π½ΠΈΡ
ΠΠ΅ Π½Π°ΠΏΡΡΠΌΡΡ ΠΊΠ°ΡΠ°ΡΡΡ ΠΏΡΠΈΠ²Π΅Π΄ΡΠ½Π½ΠΎΠ³ΠΎ Π²ΡΡΠ΅ ΠΊΠΎΠ΄Π°, Π΄Π°Π½Π½ΠΎΠ΅ Π·Π°ΠΌΠ΅ΡΠ°Π½ΠΈΠ΅ Π²ΡΡ-ΡΠ°ΠΊΠΈ ΠΈΠΌΠ΅Π΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΠ΅Ρ. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π³ΡΠ°Ρ:
ΠΠΎΠ΄ΡΡΠΈΡΠ°Π΅ΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΡΠ΅ΠΉ Π΄Π»ΠΈΠ½Ρ n ΠΎΡ A Π΄ΠΎ B. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π»Ρ n = 1 Ρ Π½Π°Ρ Π΅ΡΡΡ ΠΎΠ΄ΠΈΠ½ ΠΏΡΡΡ, 1. ΠΠ»Ρ n = 2 Ρ Π½Π°Ρ ΠΎΠΏΡΡΡ Π΅ΡΡΡ ΠΎΠ΄ΠΈΠ½ ΠΏΡΡΡ, 01. ΠΠ»Ρ n = 3 Ρ Π½Π°Ρ Π΅ΡΡΡ Π΄Π²Π° ΠΏΡΡΠΈ, 001 ΠΈ 101. ΠΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΡΠ΅ΠΉ Π΄Π»ΠΈΠ½Ρ n ΠΎΡ Π Π΄ΠΎ Π ΡΠ°Π²Π½ΠΎ Π² ΡΠΎΡΠ½ΠΎΡΡΠΈ Fn. ΠΠ°ΠΏΠΈΡΠ°Π² ΠΌΠ°ΡΡΠΈΡΡ ΡΠΌΠ΅ΠΆΠ½ΠΎΡΡΠΈ Π΄Π»Ρ Π³ΡΠ°ΡΠ°, ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ ΡΠ°ΠΊΡΡ ΠΆΠ΅ ΠΌΠ°ΡΡΠΈΡΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ»Π° ΠΎΠΏΠΈΡΠ°Π½Π° Π²ΡΡΠ΅. ΠΡΠΎ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΈΠ· ΡΠ΅ΠΎΡΠΈΠΈ Π³ΡΠ°ΡΠΎΠ², ΡΡΠΎ ΠΏΡΠΈ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΠΌΠ°ΡΡΠΈΡΠ΅ ΡΠΌΠ΅ΠΆΠ½ΠΎΡΡΠΈ Π, Π²Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ Π² Π n β ΡΡΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΡΡΠ΅ΠΉ Π΄Π»ΠΈΠ½Ρ n Π² Π³ΡΠ°ΡΠ΅ (ΠΎΠ΄Π½Π° ΠΈΠ· Π·Π°Π΄Π°Ρ, ΡΠΏΠΎΠΌΠΈΠ½Π°Π²ΡΠΈΡ ΡΡ Π² ΡΠΈΠ»ΡΠΌΠ΅ Β«Π£ΠΌΠ½ΠΈΡΠ° Π£ΠΈΠ»Π» Π₯Π°Π½ΡΠΈΠ½Π³Β»).
ΠΠΎΡΠ΅ΠΌΡ Π½Π° ΡΡΠ±ΡΠ°Ρ ΡΡΠΎΡΡ ΡΠ°ΠΊΠΈΠ΅ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ? ΠΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ, ΡΡΠΎ ΠΏΡΠΈ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½ΠΈΠΈ Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π½Π° Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΉ Π² ΠΎΠ±Π΅ ΡΡΠΎΡΠΎΠ½Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΏΡΡΠ΅ΠΉ Π½Π° Π³ΡΠ°ΡΠ΅, Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ Π½Π΅ΡΡΠΎ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ «ΠΏΠΎΠ΄ΡΠ΄Π²ΠΈΠ³ΠΈ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°», ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΠ΅Π΅ ΡΠΎΠ±ΠΎΠΉ ΡΠΈΠΏ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΡΠ΅ΡΠΊΠΎΠΉ Π΄ΠΈΠ½Π°ΠΌΠΈΠΊΠΈ. ΠΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎ ΡΡΠΎΡ ΠΏΠΎΠ΄ΡΠ΄Π²ΠΈΠ³ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΈΠ·Π²Π΅ΡΡΠ΅Π½, ΠΊΠ°ΠΊ Β«ΡΠ΄Π²ΠΈΠ³ Π·ΠΎΠ»ΠΎΡΠΎΠ³ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΡΒ», ΠΈ Π·Π°Π΄Π°ΡΡΡΡ Π½Π°Π±ΠΎΡΠΎΠΌ Β«Π·Π°ΠΏΡΠ΅ΡΡΠ½Π½ΡΡ ΡΠ»ΠΎΠ²Β» <11>. ΠΠ½ΡΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΡΠ΅ Π² ΠΎΠ±Π΅ ΡΡΠΎΡΠΎΠ½Ρ Π΄Π²ΠΎΠΈΡΠ½ΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΈ Π½ΠΈΠΊΠ°ΠΊΠΈΠ΅ ΠΏΠ°ΡΡ ΠΈΠ· Π½ΠΈΡ Π½Π΅ Π±ΡΠ΄ΡΡ ΡΠΌΠ΅ΠΆΠ½ΡΠΌΠΈ. Π’ΠΎΠΏΠΎΠ»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠ°Ρ ΡΠ½ΡΡΠΎΠΏΠΈΡ ΡΡΠΎΠΉ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ°Π²Π½Π° Π·ΠΎΠ»ΠΎΡΠΎΠΌΡ ΡΠ΅ΡΠ΅Π½ΠΈΡ Ο. ΠΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠΈΡΠ»ΠΎ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ Π² ΡΠ°Π·Π½ΡΡ ΠΎΠ±Π»Π°ΡΡΡΡ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠΈ.
ΠΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ Π»ΠΈ ΡΠ΄Π΅Π»Π°Π» ΡΠ΅ΡΡΠΎΠ²ΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅ Π½Π° PHP (ΡΠΈΡΠ»Π° Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ)?
Π Π°Π±ΠΎΡΠ°Π» ΠΏΠΎΡΡΠΈ Π²ΡΠ΅Π³Π΄Π° Π½Π° ΡΠ΅Π±Π΅, Π½Π΅Ρ ΠΎΠΏΡΡΠ° Π² ΡΠ΅ΡΡΠΎΠ²ΡΡ Π·Π°Π΄Π°Π½ΠΈΡΡ . ΠΠΎΡ ΡΠ°Π±ΠΎΡΠΎΠ΄Π°ΡΠ΅Π»Ρ ΡΠΊΠΈΠ½ΡΠ» ΡΡΠΈ Π·Π°Π΄Π°Π½ΠΈΡ, ΡΠ΄Π΅Π»Π°Π» ΠΎΠ΄Π½ΠΎ Π΄Π»Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ°, ΠΏΠΎΠΏΠΈΠ½Π°ΠΉΡΠ΅.. ΠΊΠ°ΠΊ Π² ΠΎΠ±ΡΠ΅ΠΌ Ρ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΠ΅ΠΌ/Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠΌ, Π² ΡΠ°ΠΊΠΎΠΌ ΠΊΠ»ΡΡΠ΅ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ Π±ΡΠ΄Π΅Ρ?
Π‘ΠΊΠ°ΠΆΡ ΡΡΠ°Π·Ρ, Π°Π»ΠΎΠ³ΠΎΡΠΈΡΠΌ ΡΠ°ΠΌ Π½Π°ΠΏΠΈΡΠ°Π», Π΄Π° Π΅ΡΡΡ Π² ΡΠ΅ΡΠΈ ΡΡΡΠΈ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠΌ, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΡΠ΅ΡΠ΅Π· ΡΠ΅ΠΊΡΡΡΠΈΡ, Π½ΠΎ ΡΠΆ ΠΎΡΠ΅Π½Ρ Π½Π°Π²ΠΎΡΠΎΡΠ΅Π½ΠΎ ΠΊΠ°ΠΊ-ΡΠΎ.. Π΄Π° ΠΊΡΠ°ΡΠΈΠ²ΠΎ, Π½ΠΎ Π½Π΅ ΡΠΎΠ²ΡΠ΅ΠΌ ΠΏΠΎΠ½ΡΡΠ½ΠΎ )
ΠΠΎΡΠΎΡΠ΅ Π²ΠΎΡ Π·Π°Π΄Π°Π½ΠΈΠ΅ (Ρ Π΅Π³ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ» Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ):
ΠΠ°Π½ ΠΌΠ°ΡΡΠΈΠ² [3279, 920, 4181, 8, 1, 4360, 407, 9950, 2098, 8579, 4914, 7204, 8875]. Π Π½Π΅ΠΌ Π½ΡΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΡΠΈΡΠ»Π° Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ ( 1, 1, 2, 3, 5, 8, 13, 21. ), Π·Π°ΡΠ΅ΠΌ Π²ΡΡΠΈΡΠ»ΠΈΡΡ ΡΡΠΌΠΌΡ.
ΠΠΎΡ ΡΡΠΎ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ:
Π Π΅ΡΠ»ΠΈ Π²ΠΎ Π²Ρ ΠΎΠ΄ΡΡΠΈΡ Π΄Π°Π½Π½ΡΡ Π±ΡΠ΄Π΅Ρ ΡΠΈΡΠ»ΠΎ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΡΡΡ Π·Π½Π°ΠΊΠΎΠ² Π΄Π»ΠΈΠ½Π½ΠΎΠΉ, ΡΠΎ Π²Π°Ρ ΡΠΊΡΠΈΠΏΡ ΠΏΠΎ ΡΠ°ΠΉΠΌΠ°ΡΡΡ ΠΎΡΠ²Π°Π»ΠΈΡΡΡ, ΠΏΠΎ ΠΏΠ΅ΡΠ΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ, ΠΈΠ»ΠΈ Π·Π° ΠΏΠ°ΡΡ Π»Π΅Ρ ΡΠΏΡΠ°Π²ΠΈΡΡΡ Ρ Π·Π°Π΄Π°ΡΠ΅ΠΉ ΠΏΠΎΠ΄ΡΡΠ΅ΡΠ° Π²ΡΠ΅Ρ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΡ ΡΠΈΡΠ΅Π»?
ΠΡΡΠ°Π»ΠΎΡΡ ΠΏΠ΅ΡΠ΅Π±ΡΠ°ΡΡ ΠΈ ΡΠ»ΠΎΠΆΠΈΡΡ.
Π― ΡΠ²ΠΎΠΈ ΠΏΡΡΡ ΠΊΠΎΠΏΠ΅Π΅ΠΊ Π²ΡΡΠ°Π²Π»Ρ Π½Π΅ Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ°, Π° Ρ ΡΠΎΡΠΊΠΈ Π·ΡΠ΅Π½ΠΈΡ ΡΠΈΡΡΠΎΠΊΠΎΠ΄ΠΎΠ΄ΡΠΎΡΠ΅ΡΠ°:
ΠΡΠΎ ΡΡΠΎ Π²ΠΎΠΎΠ±ΡΠ΅ Π·Π° Π΄ΠΈΡΡ? ΠΡ Π½Π° Π΄ΠΆΡΠ½ΠΈΠΎΡ Π±ΠΈΡΡΠΈΠΊΡ ΡΡΠΎΠ½ΡΠ΅Π½Π΄Π΅ΡΠ° ΡΡΡΡΠ°ΠΈΠ²Π°Π΅ΡΠ΅ΡΡ? ΠΡ Π²ΠΎΠΎΠ±ΡΠ΅ ΠΏΡΠΎ ΠΠΠ ΡΠ»ΡΡΠ°Π»ΠΈ? ΠΠ»ΠΈ ΡΡΠΎ, Π΅ΡΠ»ΠΈ Π΄Π»Ρ ΡΠ΅ΡΡΠΎΠ²ΠΎΠ³ΠΎ, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈ ΠΏΠΎ ΠΏΡΠΎΡΠ΅Π΄ΡΡΠΈΡΡ? ΠΠ°ΡΠ΅ΠΌ ΡΡΡ Π²ΠΎΠΎΠ±ΡΠ΅ html? ΠΡΠΎ Π±ΡΠ»ΠΎ Π·Π°Π΄Π°Π½ΠΈΠ΅? ΠΠ°Ρ ΠΊΠΎΠ΄ Π½Π°ΡΡΡΠ°Π΅Ρ Π²ΡΠ΅ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. Π― Π±Ρ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°ΡΡ Ρ ΡΠ°ΠΊΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ Π΄Π°ΠΆΠ΅ Π½Π΅ ΠΏΠ΅ΡΠ΅Π·Π²ΠΎΠ½ΠΈΠ».
ΠΠ°ΡΠ΅ΠΌ ΡΡΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ? ΠΡ Π΄ΡΠΌΠ°Π΅ΡΠ΅ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΡΠ΅Π²ΡΡΠΈΡΡ ΠΊΠΎΠ΄ Π½Π΅ ΠΏΠΎΠΉΠΌΠ΅Ρ ΡΡΠΎ ΠΎΠ½ Π΄Π΅Π»Π°Π΅Ρ? ΠΠ»ΠΈ Π²Ρ ΠΎΠ±Π΅Π·ΡΡΠ½Π΅ ΡΡΠΎΡ ΠΊΠΎΠ΄ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅ΡΠ΅ ΡΠ°ΠΊ ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ ΠΎΠ±ΡΡΡΠ½ΠΈΡΡ ΡΠ°ΠΊΡΡ ΡΡΡΠΎΠΊΡ
Π Π²Ρ ΡΡΠΎ Π² Π½ΡΠ»Π΅Π²ΡΡ ΠΎΡΡΠ°Π»ΠΈΡΡ? ΠΠΎΡΠ΅ΠΌΡ ΠΌΠ°ΡΡΠΈΠ² ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΡΡΠΎΠ΄Π»ΠΈΠ²ΡΠΌ array(), Π° Π½Π΅ []?
ΠΡ ΠΈ Π΄Π°, Π°Π»Π³ΠΎΡΠΈΡΠΌ ΠΎΡΠ΅Π½Ρ ΠΏΠ»ΠΎΡ ΠΎΠΉ. ΠΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΊΠΎΡΠΎΡΠ΅ ΠΈ ΡΠΈΠΌΠΏΠ°ΡΠΈΡΠ½Π΅Π΅.
Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ
1. ΠΡΡΡ ΠΏΡΠΎΡΠ΅, ΠΈ Π»ΡΠ΄ΠΈ ΠΊ Π²Π°ΠΌ ΠΏΠΎΡΡΠ½ΡΡΡΡ.
Π‘Π°ΠΌΠΎΠ΅ ΠΏΡΠΎΡΡΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ β ΡΡΠΎ Π±Π°Π½Π°Π»ΡΠ½ΡΠΉ ΡΠΈΠΊΠ».
Π¨ΡΡΠΊΠ°. Π Π°Π·ΡΠΌΠ΅Π΅ΡΡΡ, ΡΠ°ΠΊ ΠΏΠΈΡΠ°ΡΡ Π½Π΅ Π½ΡΠΆΠ½ΠΎ β Π΅ΡΠ»ΠΈ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, Π²Ρ Π½Π΅ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΡΠ΅ΡΠ΅ΡΡ Π½Π° Π΄ΠΎΠ»ΠΆΠ½ΠΎΡΡΡ ΡΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΠΎΠ±ΡΡΡΠΊΠ°ΡΠΎΡΠ°.
Π£ Π²Π°Ρ ΠΊΠΎΠ½ΡΠΈΠ»ΠΈΡΡ ΡΠ°Π»ΠΎΠ½ΡΠΈΠΊΠΈ Π½Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅? cypok
ΠΠ°Π΄Π½ΠΎ, Π»Π°Π΄Π½ΠΎ, Π΄Π»Ρ Π΅ΡΡ Π±ΠΎΠ»ΡΡΠ΅ΠΉ ΡΠΈΡΠ°Π΅ΠΌΠΎΡΡΠΈ Π½Π°ΠΏΠΈΡΠ΅ΠΌ ΡΠ°ΠΊ:
ΠΡΠΎ β Π²Π°ΡΠΈΠ°Π½Ρ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΠΉ, ΠΏΡΠΎΡΡΠΎΠΉ ΠΈ ΡΠ»Π΅Π³Π°Π½ΡΠ½ΡΠΉ. ΠΠΎ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΡΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΡ Π·Π½Π°Π½ΠΈΠ΅ Π΅ΡΡ ΠΊΠ°ΠΊΠΈΡ -ΡΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΉ? ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρβ¦
2. Π§ΡΠΎΠ±Ρ ΠΏΠΎΠ½ΡΡΡ ΡΠ΅ΠΊΡΡΡΠΈΡ, Π½Π°Π΄ΠΎ ΠΏΠΎΠ½ΡΡΡ ΡΠ΅ΠΊΡΡΡΠΈΡ
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π°, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΠΎΠ²Π°ΡΡ, ΡΡΠΎ ΡΠΌΠ΅Π΅ΡΠ΅ Π² ΡΠ΅ΠΊΡΡΡΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°ΠΊ:
ΠΠ°ΠΏΠΎΠΌΠ½ΠΈΡΠ΅ ΡΡΠΎΡ Π²Π°ΡΠΈΠ°Π½Ρ. Π’Π°ΠΊ Π΄Π΅Π»Π°ΡΡ Π½Π΅ ΡΡΠΎΠΈΡ. ΠΠ΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ. ΠΠ΅Π»ΡΠ·Ρ. ΠΠΈΠΊΠΎΠ³Π΄Π°. ΠΡΠΎ Ρ ΡΠΆΠ΅, ΡΠ΅ΠΌ ΠΏΠΈΠ½Π°ΡΡ ΡΠ΅Π½ΠΎΡΠΊΠΎΠ², ΠΈ ΡΡΠ°Π²Π½ΠΈΠΌΠΎ Ρ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠΌ Ρ ΠΎΠ»ΠΎΠΊΠΎΡΡΠΎΠΌ.
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Ρ ΡΠΏΡΠΎΡΠΈΡΠ΅, ΠΏΠΎΡΠ΅ΠΌΡ. Π ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΡΠΎΡΡΠΎ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΡΡΠΎΡ ΠΊΠΎΠ΄ ΠΈ ΠΏΠΎΠΏΡΡΠ°ΠΉΡΠ΅ΡΡ ΠΏΠΎΡΡΠΈΡΠ°ΡΡ, ΡΠΊΠ°ΠΆΠ΅ΠΌ, ΠΏΡΡΠΈΠ΄Π΅ΡΡΡΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ. ΠΠΎΠ»Π°Π³Π°Ρ, Π²Ρ ΠΎΡΡΡΠΈΡΠ΅ Π½Π΅ΠΊΡΡ Π·Π°Π΄Π΅ΡΠΆΠΊΡ. Π¨ΡΡΠΊΠ°. ΠΠΎΠ»Π°Π³Π°Ρ, Π΅ΡΠ»ΠΈ Π²Ρ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΠ΅ ΡΡΠΎΡ ΠΊΠΎΠ΄ Π½Π΅ Π½Π° ΡΡΠΏΠ΅ΡΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅, ΡΠΎ ΠΏΠΎΠΏΡΠΎΡΡΡ Π½Π΅ Π΄ΠΎΠΆΠ΄ΡΡΠ΅ΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°. ΠΡΠΈ ΡΠΎΠΌ, ΡΡΠΎ ΠΏΡΠΎΡΡΠΎΠΉ, Π½Π΅ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΈΠ· ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΡ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΠΏΠΎΡΡΠΈΡΠ°Π΅Ρ ΠΏΡΡΠΈΠ΄Π΅ΡΡΡΡΠΉ ΡΠ»Π΅Π½ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ Π±ΡΡΡΡΠ΅Π΅, ΡΠ΅ΠΌ Π²Ρ ΡΡΠΏΠ΅Π΅ΡΠ΅ ΠΏΡΠΎΠΈΠ·Π½Π΅ΡΡΠΈ ΡΠ»ΠΎΠ²ΠΎ Β«ΠΏΡΡΡΠ΄Π΅ΡΡΡΒ» ΠΈΠ»ΠΈ Π»ΡΠ±ΠΎΠΉ Π΅Π³ΠΎ ΡΠ»ΠΎΠ³.
ΠΡΡΠ°ΠΆΠ°ΡΡΡ Π³ΡΡΠ±ΡΠΌ ΡΠ·ΡΠΊΠΎΠΌ O-Π½ΠΎΡΠ°ΡΠΈΠΈ, ΡΠ°ΠΊΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ O(e n ). Π’ΠΎ Π΅ΡΡΡ β Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠ°ΡΡΡΡ ΡΠΊΡΠΏΠΎΠ½Π΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΏΡΠΈ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠΈ n. Π’ΠΎ Π΅ΡΡΡ β ΠΊΠΎΠ³Π΄Π° n ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ Π½Π°, Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ Π². ΠΡΡΠ±ΠΎ Π³ΠΎΠ²ΠΎΡΡ, Π΅ΡΠ»ΠΈ fib(45) Π²Π°ΠΌ ΠΏΡΠΈΡΠ»ΠΎΡΡ ΠΆΠ΄Π°ΡΡ ΡΠ°Ρ, ΡΠΎ fib(46) Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ ΠΆΠ΄Π°ΡΡ Π΄Π²Π° ΡΠ°ΡΠ°, fib(47) β 4 ΡΠ°ΡΠ°, ΠΈ ΡΠ°ΠΊ Π΄Π°Π»Π΅Π΅. Π― ΡΠ°Π·ΠΆΡΠ²ΡΠ²Π°Ρ ΡΠ°ΠΊ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ, ΡΡΠΎΠ±Ρ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠΈΡΠ°ΡΠ΅Π»Ρ, Π΄Π°ΠΆΠ΅ Π²Π΅ΡΡΡΠ°Π»ΡΡΠΈΠΊ, Π²ΠΏΠ΅ΡΠ²ΡΠ΅ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°Π²ΡΠΈΠΉ ΡΠ²ΠΎΠΈ ΡΠΈΠ»Ρ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ ΡΠΊΡΠΈΠΏΡΠΎΠ², ΠΌΠΎΠ³ ΠΎΡΠΎΠ·Π½Π°ΡΡ ΡΠΆΠ°Ρ ΡΠΈΡΡΠ°ΡΠΈΠΈ.
ΠΡΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ, Π½ΠΎ ΡΠ»ΠΈΡΠΊΠΎΠΌ Π³ΡΡΠ±ΠΎ. ΠΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠΎΡΠ½ΡΡ ΠΎΡΠ΅Π½ΠΊΡ ΡΠΈΡΠ»Π° Π²ΡΠ·ΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΈ
(1+sqrt(5)) fib(n) ΠΈ ΠΊΡΠ°ΡΠΈΠ²ΠΎΠ΅ Π·Π°ΠΌΠ΅ΡΠ°Π½ΠΈΠ΅ Β«ΠΠ»Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΡΠΈΡΠ»Π° Π€ΠΈΠ±ΠΎΠ½Π½Π°ΡΠΈ Π½Π°ΠΈΠ²Π½ΡΠΌ ΡΠ΅ΠΊΡΡΡΠ΅Π½ΡΠ½ΡΠΌ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ Π²ΡΠ·ΠΎΠ²ΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΈ Π² 3.2 ΡΠ°Π·Π° Π±ΠΎΠ»ΡΡΠ΅ ΡΠ΅ΠΌ ΡΠ°ΠΌΠΎ ΡΠΈΡΠ»ΠΎ Π€ΠΈΠ±ΠΎΠ½Π½Π°ΡΠΈΒ». Taus
Π ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ Π΅ΡΡ ΠΎΠ΄ΠΈΠ½ ΠΌΠ΅ΡΠΎΠ΄ Π΅Π³ΠΎ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ. ΠΠ°Π΄ΠΎ ΠΏΡΠΎΡΡΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ Π½Π°ΠΈΠ²Π½ΡΠΉ ΡΠ΅ΠΊΡΡΡΠ΅ΠΊΡΠ½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄, ΠΏΠΎΠ΄ΡΡΠΈΡΠ°ΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π²ΡΠ·ΠΎΠ²ΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ Π½Π° 3.2! Cerberuser
ΠΡΠ»ΠΈ ΠΎΡ Π²Π°Ρ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΠΎΡΡΠ΅Π±ΡΡΡ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΡΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ, ΡΠΊΠΎΡΠ΅Π΅ Π²ΡΠ΅Π³ΠΎ, ΡΡΠΎ Π»ΠΎΠ²ΡΡΠΊΠ°. Β«ΠΡΠ°Π²ΠΈΠ»ΡΠ½Π°ΡΒ» ΡΠ΅ΠΊΡΡΡΠΈΡ, ΡΠ°Π±ΠΎΡΠ°ΡΡΠ°Ρ Π·Π° Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°ΠΊ:
ΠΠΎΠ΄Π²ΠΎΠ΄Ρ ΠΈΡΠΎΠ³: Π½Π΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎ, ΡΡΠΎ ΡΠΈΡΠ»Π° Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ ΡΠ²Π»ΡΡΡΡΡ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΠΌ, Ρ ΡΠ΅ΡΡΠΎΠΌΠ°ΡΠΈΠΉΠ½ΡΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΌ ΡΠ΅ΠΊΡΡΡΠΈΠΈ, Π² Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΡΠΎ Π½Π΅ ΡΠ°ΠΌΡΠΉ ΡΠ΄ΠΎΠ±Π½ΡΠΉ ΡΠ»ΡΡΠ°ΠΉ Π΄Π»Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ΅ΠΊΡΡΡΠΈΠΈ. ΠΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ Π±Π»Π΅ΡΠ½ΡΡΡ Π΅ΡΡ ΠΊΠ°ΠΊΠΈΠΌΠΈ-Π½ΠΈΠ±ΡΠ΄Ρ Π·Π½Π°Π½ΠΈΡΠΌΠΈ.
3. ΠΠ΅ΠΌΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π²ΠΎΠ»ΡΠ΅Π±Π½ΡΠΉ ΡΠΏΠΎΡΠΎΠ±, ΠΏΡΠ΅Π²ΡΠ°ΡΠ°ΡΡΠΈΠΉ ΡΡΠ΄ΠΎΠ²ΠΈΡΠ½ΠΎ Π½Π΅ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ· ΠΏΡΠΎΡΠ»ΠΎΠ³ΠΎ ΠΏΠ°ΡΠ°Π³ΡΠ°ΡΠ° Π² ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΎΡΠ΅Π½Ρ Π±ΡΡΡΡΠΎΠ΅ (Ρ ΠΎΡΡ ΠΈ Π½Π΅ Π»ΠΈΡΡΠ½Π½ΠΎΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌ). ΠΠΌΡ Π΅ΠΌΡ β ΠΌΠ΅ΠΌΠΎΠΈΠ·Π°ΡΠΈΡ. Π Π΅ΡΠ»ΠΈ Π³ΠΎΠ²ΠΎΡΠΈΡΡ ΠΏΠΎ-ΡΡΡΡΠΊΠΈ β ΠΌΡ ΠΏΡΠΎΡΡΠΎ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅ΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΡ Π²ΡΠ·ΠΎΠ²ΠΎΠ² Π²ΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π²ΡΡΠΈΡΠ»ΡΡΡ ΠΈΡ Π·Π°Π½ΠΎΠ²ΠΎ.
Π’Π°ΠΊ Π²ΠΎΡ, ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π±ΡΠ΄ΡΡ Π²ΡΡΠΈΡΠ»ΡΡΡΡΡ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ ΡΠ°Π·Ρ, Π° ΠΏΡΠΈ ΠΈΡ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠΌ Π·Π°ΠΏΡΠΎΡΠ΅ β ΠΏΡΠΎΡΡΠΎ Π±ΡΠ°ΡΡΡΡ ΠΈΠ· ΠΊΡΡΠ°. ΠΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅ΡΠ΅, Π²ΠΎ ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π· Π±ΡΡΡΡΠ΅Π΅ ΠΌΡ ΡΠΌΠΎΠΆΠ΅ΠΌ ΡΠ΅ΠΏΠ΅ΡΡ Π²ΡΡΠΈΡΠ»ΠΈΡΡ ΡΠΎΡΠΎΠΊ ΠΏΡΡΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ? Π‘Π΅ΡΡΡΠ·Π½ΠΎ, ΠΊΠ°ΠΊ Π²Ρ Π΄ΡΠΌΠ°Π΅ΡΠ΅, Π²ΠΎ ΡΠΊΠΎΠ»ΡΠΊΠΎ?
ΠΠ°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ! Π’Π΅ΠΏΠ΅ΡΡ ΠΏΠ΅ΡΠ²ΡΠΉ Π²ΡΠ·ΠΎΠ² fib(45) ΠΎΡΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎ ΡΠΊΠΎΡΠΎΡΡΡΡ, ΡΡΠ°Π²Π½ΠΈΠΌΠΎΠΉ Ρ Π²Π΅ΡΡΠΈΠ΅ΠΉ Ρ ΡΠΈΠΊΠ»ΠΎΠΌ. Π Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠΈΠ΅ Π²ΡΠ·ΠΎΠ²Ρ Π²ΠΎΠΎΠ±ΡΠ΅ ΡΡΠ°Π±ΠΎΡΠ°ΡΡ Π·Π° ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡβ¦ ΠΠΏ! ΠΠΏΡΡΡ ΠΎΠ±ΠΌΠ°Π½ΡΠ». ΠΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΏΠΎ ΠΊΠ»ΡΡΡ β ΡΡΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π±ΡΡΡΡΠ°Ρ, Π½ΠΎ Π²ΡΡ-ΡΠ°ΠΊΠΈ O(1) ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΡΠ΅Π΄Π½Π΅ΠΌ, Π² Ρ ΡΠ΄ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ Π΄Π΅Π³ΡΠ°Π΄ΠΈΡΠΎΠ²Π°ΡΡ Π΄ΠΎ O(n). Π§ΡΠΎΠ±Ρ ΡΡΠ°Π»ΠΎ ΡΠΎΠ²ΡΠ΅ΠΌ Ρ ΠΎΡΠΎΡΠΎ, Π² Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΌΠ΅Π½ΠΈΡΡ ΡΠΈΠΏ cache Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π½Π° ΠΌΠ°ΡΡΠΈΠ².
Π Π°Π·ΡΠΌΠ΅Π΅ΡΡΡ, Π½Π΅ ΡΡΠΎΠΈΡ ΡΠ°ΠΊΠΆΠ΅ Π·Π°Π±ΡΠ²Π°ΡΡ, ΡΡΠΎ ΠΌΠ΅ΠΌΠΎΠΈΠ·Π°ΡΠΈΡ ΡΡΠ΅Π±ΡΠ΅Ρ ΠΏΠ°ΠΌΡΡΠΈ. Π ΠΏΠΎΠΊΠ° ΠΌΡ ΡΠΌΠ΅Π½ΡΡΠ°Π΅ΠΌ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°ΡΡΡΡ Ρ O(1) Π΄ΠΎ O(n).
ΠΠ°ΠΊ Π΅ΡΡ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π²ΡΠΏΠ΅Π½Π΄ΡΠΈΡΡΡΡ? ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΠΎΠ²Π°Π² ΡΠ²ΠΎΡ Π³Π»ΡΠ±ΠΎΠΊΠΎΠ΅ Π·Π½Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠΈ
4. ΠΠΈΡΡΠ΅Ρ ΠΠΈΠ½Π΅
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΎΡΠΎΠ±Π°Ρ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½Π°Ρ Π½Π°ΡΠΊΠ° ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠ΅ΠΊΡΡΡΠ΅Π½ΡΠ½ΡΠ΅ ΡΠΎΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΠΏΡΠ΅Π²ΡΠ°ΡΠ°ΡΡ Π² ΡΠ²Π½ΡΠ΅ ΡΠΎΡΠΌΡΠ»Ρ. ΠΠ΄Π΅ΡΡ ΠΌΡ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ Π²Π΄Π°Π²Π°ΡΡΡΡ Π² Π΅Ρ Π΄Π΅ΡΠ°Π»ΠΈ. Π‘ΠΊΠ°ΠΆΠ΅ΠΌ Π»ΠΈΡΡ, ΡΡΠΎ Π΄Π»Ρ ΡΠΈΡΠ΅Π» Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π½Π΅ΡΠ»ΠΎΠΆΠ½ΡΡ ΡΠ°ΡΡΡΠΆΠ΄Π΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ²Π΅ΡΡΠΈ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΡΠΎΡΠΌΡΠ»Ρ, ΠΈΠ·Π²Π΅ΡΡΠ½ΡΡ ΠΊΠ°ΠΊ ΡΠΎΡΠΌΡΠ»Π° ΠΠΈΠ½Π΅:
ΠΠ΄Π½Π°ΠΊΠΎ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΠ·ΡΠΊΠ° ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠΈ, Π·Π°ΠΏΠΈΡΠ΅ΠΌ ΡΡΠΎ Π½Π° ΡΠ·ΡΠΊΠ΅ JavaScript:
ΠΡΠΎΠ³ΠΎΠ½ΠΈΠΌ Π½Π° ΠΏΠ΅ΡΠ²ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠΈΡΠ»Π°Ρ . ΠΠ°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ, ΠΊΠ°ΠΆΠ΅ΡΡΡ, Π²ΡΡ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ. ΠΠΎΡ 13, Π²ΠΎΡ 21, Π²ΠΎΡ 34, Π²ΠΎΡβ¦ 54.99999999999999?
ΠΠ°, ΡΠ°Π·ΡΠΌΠ΅Π΅ΡΡΡ, ΡΠ°ΠΊΠΎΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π·Π°ΠΊΠΎΠ½ΠΎΠΌΠ΅ΡΠ΅Π½. Π€ΠΎΡΠΌΡΠ»Π° ΠΠΈΠ½Π΅ ΡΠΎΡΠ½Π° ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ, Π½ΠΎ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ ΠΎΠΏΠ΅ΡΠΈΡΡΠ΅Ρ Π΄ΡΠΎΠ±ΡΠΌΠΈ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΉ ΡΠΎΡΠ½ΠΎΡΡΠΈ, ΠΈ ΠΏΡΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΡ Π½Π°Π΄ Π½ΠΈΠΌΠΈ ΠΌΠΎΠΆΠ΅Ρ Π½Π°ΠΊΠΎΠΏΠΈΡΡΡΡ ΠΎΡΠΈΠ±ΠΊΠ°, ΡΡΠΎ ΠΈ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΎ Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅. ΠΠ΄Π½Π°ΠΊΠΎ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ Π²ΡΡ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ. ΠΠ½Π°Ρ, ΡΡΠΎ Π²ΡΡΠΈΡΠ°Π΅ΠΌΠΎΠ΅ Π² ΡΠΈΡΠ»ΠΈΡΠ΅Π»Π΅ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ΄Π΅Ρ ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΠΌ ΠΏΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΏΡΠΎΡΡΠΈΡΡ ΡΠΎΡΠΌΡΠ»Ρ Π΄ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ:
ΠΠ΄Π΅ΡΡ ΡΡΡΠ°Π½Π½ΡΠ΅ Π½Π΅Π΄ΠΎΠ΄Π΅Π»Π°Π½Π½ΡΠ΅ ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΡΠ΅ ΡΠΊΠΎΠ±ΠΊΠΈ ΠΎΠ·Π½Π°ΡΠ°ΡΡ Π±Π»ΠΈΠΆΠ°ΠΉΡΠ΅Π΅ ΡΠ΅Π»ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ, ΡΠΎ Π΅ΡΡΡ β ΠΎΠΊΡΡΠ³Π»Π΅Π½ΠΈΠ΅. ΠΠ΅ΡΠ΅ΠΏΠΈΡΠ΅ΠΌ Π½Π°Ρ ΠΊΠΎΠ΄:
ΠΠ°, ΡΠ°ΠΊ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π»ΡΡΡΠ΅. ΠΡ ΡΠΌΠΎΠΆΠ΅ΠΌ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΠΈ 55, ΠΈ 89, ΠΈ Π΄Π°ΠΆΠ΅ ΠΌΠΎΡ Π»ΡΠ±ΠΈΠΌΠΎΠ΅ ΡΠΈΡΠ»ΠΎ Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ β 144 (ΠΊΠΎΡΠΎΡΠΎΠ΅ Ρ Π»ΡΠ±Π»Ρ Π·Π° ΡΠΎ, ΡΡΠΎ ΠΎΠ½ΠΎ ΡΠ°Π²Π½ΡΠ΅ΡΡΡ Π΄Π²Π΅Π½Π°Π΄ΡΠ°ΡΠΈ Π² ΠΊΠ²Π°Π΄ΡΠ°ΡΠ΅). ΠΡΡ Π±ΡΠ΄Π΅Ρ Ρ ΠΎΡΠΎΡΠΎ Π΄ΠΎ ΡΠΈΡΠ»Π° Π·Π° Π½ΠΎΠΌΠ΅ΡΠΎΠΌ 76. ΠΠΎΡΠΎΡΠΎΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΡΠ°Π²Π½ΠΎ 3416454622906707, Π° Π½Π°ΡΠ° ΡΡΠ½ΠΊΡΠΈΡ Π²ΡΡΠΈΡΠ»ΠΈΡ 3416454622906706. ΠΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠΉ ΡΠΎΡΠ½ΠΎΡΡΠΈ Π΄ΡΠΎΠ±Π½ΡΡ ΡΠΈΡΠ΅Π» Π½ΠΈΠΊΡΠ΄Π° Π½Π΅ Π΄Π΅Π»Π°ΡΡ, ΠΌΡ ΠΏΡΠΎΡΡΠΎ Π·Π°ΡΠΎΠ»ΠΊΠ°Π»ΠΈ Π΅Ρ ΠΏΠΎΠ³Π»ΡΠ±ΠΆΠ΅ ΠΈ Π½Π°Π΄Π΅ΡΠ»ΠΈΡΡ, ΡΡΠΎ ΠΎΠ½Π° Π½Π΅ Π²ΡΠΏΠ»ΡΠ²ΡΡ. ΠΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π΄Π°Π½Π½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ β Π½Π°Π΄Π΅ΡΠ»ΠΈΡΡ Π½Π°ΠΏΡΠ°ΡΠ½ΠΎ.
ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠ΄Π΅Π»Π°ΡΡ Π΅ΡΡ ΠΊΠΎΠ΅-ΡΡΠΎ, ΡΡΠΎΠ±Ρ ΡΠΏΠ°ΡΡΠΈ ΡΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄. ΠΠΎ ΠΎΠ± ΡΡΠΎΠΌ Π½ΠΈΠΆΠ΅. Π ΠΏΠΎΠΊΠ° β ΡΡΡΠΊΠΈ Π² ΡΡΠΎΡΠΎΠ½Ρ. ΠΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π΅ ΡΡΡΠΎΠ²ΠΎΠΌ, Ρ Π°ΡΠ΄ΠΊΠΎΡΠ½ΠΎΠΌ ΠΈ Π±ΡΡΡΠ°Π»ΡΠ½ΠΎΠΌ.
5. Π‘Π»Π΅Π΄ΡΠΉ Π·Π° Π±Π΅Π»ΡΠΌ ΠΊΡΠΎΠ»ΠΈΠΊΠΎΠΌ.
ΠΠΎΠ²ΠΎΡΡΡ, Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° ΠΈ Π²Π°ΠΌ ΠΏΡΠΈΡΠ»Π° Π² Π³ΠΎΠ»ΠΎΠ²Ρ ΠΈΠ΄Π΅Ρ, ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅ΡΠΈΡΡ Π΅Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ, ΡΠΎ ΡΠ΅ΠΏΠ΅ΡΡ Ρ Π²Π°Ρ Π΄Π²Π΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ. ΠΠ°ΡΡΠΈΡΡ β ΡΡΠΎ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ Π½Π°ΠΎΠ±ΠΎΡΠΎΡ. ΠΠ½ΠΎΠ³ΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, Π΅ΡΠ»ΠΈ ΠΈΡ ΠΏΠ΅ΡΠ΅ΡΠΎΡΠΌΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π½Π° ΡΠ·ΡΠΊΠ΅ ΠΌΠ°ΡΡΠΈΡ, ΡΠ΅ΡΠ°ΡΡΡΡ ΠΏΡΠΎΡΡΠΎ ΡΠ°ΠΌΠΈ ΡΠΎΠ±ΠΎΠΉ.
Π§ΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ ΡΠΈΡΠ΅Π» Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ, Π΄Π»Ρ Π½ΠΈΡ Π½Π° ΠΌΠ°ΡΡΠΈΡΠ½ΠΎΠΌ ΡΠ·ΡΠΊΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΠ°ΡΡ Π²ΠΎΡ ΡΠ°ΠΊΠΎΠ΅ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎΠ΅ ΡΠΎΠΆΠ΄Π΅ΡΡΠ²ΠΎ:
Π’ΠΎ Π΅ΡΡΡ Π΅ΡΠ»ΠΈ Π²Π·ΡΡΡ ΠΏΠ°ΡΡ ΠΏΠΎΠ΄ΡΡΠ΄ ΠΈΠ΄ΡΡΠΈΡ ΡΠΈΡΠ΅Π» Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ ΠΈ ΡΠΌΠ½ΠΎΠΆΠΈΡΡ ΠΈΡ Π½Π° ΡΠ°ΠΊΡΡ Π²ΠΎΡ Π½Π΅Π·Π°ΠΌΡΡΠ»ΠΎΠ²Π°ΡΡΡ ΠΌΠ°ΡΡΠΈΡΡ, ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΏΠ°ΡΡ. Π ΠΎΡΡΡΠ΄Π° Π»ΠΎΠ³ΠΈΡΠ½ΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π²ΡΠ²ΠΎΠ΄: Π΅ΡΠ»ΠΈ ΠΌΡ Π²ΠΎΠ·ΡΠΌΡΠΌ ΠΏΠ°ΡΡ ΠΈΠ· Π½ΡΠ»Π΅Π²ΠΎΠ³ΠΎ ΠΈ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ, ΡΠΎ Π΅ΡΡΡ Π½ΡΠ»Ρ ΠΈ Π΅Π΄ΠΈΠ½ΠΈΡΡ, ΠΈ ΡΠΌΠ½ΠΎΠΆΠΈΠΌ ΠΈΡ Π½Π° ΡΡΡ ΠΌΠ°ΡΡΠΈΡΡ Π² ΡΠ½Π½ΠΎΠΉ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ, ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ ΠΏΠ°ΡΡ ΠΈΠ· ΡΠ½Π½ΠΎΠ³ΠΎ ΠΈ ΡΠ½ ΠΏΠ»ΡΡ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ. Π’ΠΎ Π΅ΡΡΡ, Π³ΠΎΠ²ΠΎΡΡ ΠΏΠΎ-ΡΠ΅Π»ΠΎΠ²Π΅ΡΠ΅ΡΠΊΠΈ:
ΠΠΎΠΆΠ½ΠΎ ΡΡΠΎ Π΅ΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΠΏΡΠΎΡΡΠΈΡΡ, ΠΎΡΠΊΠ°Π·Π°Π²ΡΠΈΡΡ ΠΎΡ Π²Π΅ΠΊΡΠΎΡΠΎΠ². ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ Π² ΡΠ°ΠΌΠΎΠΉ ΠΌΠ°ΡΡΠΈΡΠ΅:
ΠΠ°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ, Π½Π΅ ΠΏΡΠ°Π²Π΄Π° Π»ΠΈ? ΠΡΡΠ°Π»ΠΎΡΡ ΠΏΠΎΠ½ΡΡΡ, Π½Π°ΡΠΈΠ³Π° ΠΏΠΎΠΏΡ Π³Π°ΡΠΌΠΎΠ½Ρ, Π΅ΡΠ»ΠΈ ΠΎΠ½ Π½Π΅ ΡΠΈΠ»Π°ΡΠΌΠΎΠ½Ρ. Π ΡΠΌΡΡΠ»Π΅ β Π·Π°ΡΠ΅ΠΌ ΡΠ°ΠΊΠΈΠ΅ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ Π½Π° ΡΠΎΠ²Π½ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅. Π ΠΎΡΠ²Π΅Ρ ΠΏΡΠΎΡΡ β Π±ΡΡΡΡΠΎΠ΅ Π²ΠΎΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΡΡΠ΅ΠΏΠ΅Π½Ρ.
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ ΡΠΊΠ°ΠΆΠ΅Ρ. ΡΡΠΎ ΠΎΠ½ ΡΡΠΎ ΡΠΈΡΠ»ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡ Π½Π°ΠΈΠ·ΡΡΡΡ, ΠΈ Π½ΠΈΡΠ΅Π³ΠΎ ΡΠΌΠ½ΠΎΠΆΠ°ΡΡ Π½Π΅ Π½ΡΠΆΠ½ΠΎ. ΠΠ΄Π½Π°ΠΊΠΎ Π²ΠΎΠΏΡΠΎΡΡ ΠΌΠ΅ΠΌΠΎΠΈΠ·Π°ΡΠΈΠΈ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ Π²ΡΡΠ΅.
Π’Π°ΠΊ Π²ΠΎΡ, Π±ΡΡΡΡΠΎΠ΅ Π²ΠΎΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΡΡΠ΅ΠΏΠ΅Π½Ρ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌΠΎ ΠΈ ΠΊ ΠΌΠ°ΡΡΠΈΡΠ°ΠΌ, ΠΈ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΌΠ΅Π½ΡΡΠΈΡΡ Π°ΡΠΈΠΌΠΏΡΠΎΡΠΈΡΠ΅ΡΠΊΡΡ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ Π½Π°ΡΠ΅ΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ Ρ O(n) Π΄ΠΎ O(log n). Π ΡΡΠΎ ΠΎΡΠ΅Π½Ρ ΠΊΡΡΡΠΎ β Π΅ΡΠ»ΠΈ, ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, Π½Π°ΠΌ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ°ΠΊ Π²Π°ΠΆΠ½Π° ΡΡΠ° ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ. ΠΠ°Π²Π°ΠΉΡΠ΅ Π½Π°ΠΏΠΈΡΠ΅ΠΌ ΠΊΠΎΠ΄:
ΠΠΎΡ ΠΌΡ ΠΈ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΈ ΡΠ°ΠΌΡΠΉ Π±ΡΡΡΡΡΠΉ Π°Π»Π³ΠΎΡΠΈΡΠΌ Π½Π° ΠΠΈΠΊΠΎΠΌ ΠΠ°ΠΏΠ°Π΄Π΅. Π Π΅Π³ΠΎ, Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΡ , ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ΠΈΡΠΎΠ½ΠΈΡΠ½ΠΎ ΠΏΡΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΠΎΠ²Π°ΡΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ. Π Π² ΠΊΠ°ΠΊΠΈΡ -Π½ΠΈΠ±ΡΠ΄Ρ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠΎ-ΡΠΌΠΊΠΈΡ ΠΌΠ΅ΡΡΠ°Ρ ΠΈΠΌΠ΅Π½Π½ΠΎ Π΅Π³ΠΎ ΠΎΡ Π²Π°Ρ ΠΈ Π±ΡΠ΄ΡΡ ΠΆΠ΄Π°ΡΡ.
Π― ΠΎΠ±Π΅ΡΠ°Π» ΡΠ΅ΠΌΠ°ΡΠΊΡ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΆΠ΅ Π½Π°ΠΌ ΡΠΏΠ°ΡΡΠΈ ΠΌΠ΅ΡΠΎΠ΄, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡΠΉ Π½Π° ΡΠΎΡΠΌΡΠ»Π΅ ΠΠΈΠ½Π΅. ΠΡΠ²Π΅Ρ ΠΊΡΠΎΠ΅ΡΡΡ Π²ΠΎΡ Π² ΡΡΠΎΠΉ ΠΌΠΎΠ΅ΠΉ ΡΡΠ°ΡΡΠ΅. Π’Π°ΠΌ Ρ Π΄Π»Ρ Π½ΡΠΆΠ΄ Π½Π°ΡΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ ΠΎΠ·ΡΠΉΡΡΠ²Π° Π½Π°ΠΏΠΈΡΠ°Π» ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΠΊΠ»Π°ΡΡ ΠΊΠΎΡΠ΅Π½Ρ-ΠΈΠ·-ΠΏΡΡΠΈ-ΡΠ°ΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΡ ΡΠΈΡΠ΅Π», ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±Π΅Π· ΠΏΠΎΡΠ΅ΡΠΈ ΡΠΎΡΠ½ΠΎΡΡΠΈ Ρ ΡΠ°Π½ΠΈΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Π½Π°Π΄ ΡΠ΅Π»ΡΠΌΠΈ ΡΠΈΡΠ»Π°ΠΌΠΈ ΠΈ ΠΊΠΎΡΠ½Π΅ΠΌ ΠΈΠ· ΠΏΡΡΠΈ. ΠΠΎΠΆΠ½ΠΎ Π²Π·ΡΡΡ ΡΡΠΎΡ ΠΊΠ»Π°ΡΡ, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΡ Π΅Π³ΠΎ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ ΠΎΠΊΡΡΠ³Π»Π΅Π½ΠΈΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΡΠΈΡΠ΅Π» Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ ΠΏΠΎ ΡΠΎΡΠΌΡΠ»Π΅ ΠΠΈΠ½Π΅. Π Π·Π°ΡΠ΅ΠΌ Π²ΠΏΡΡΡΠ½ΡΡΡ Π·Π°ΠΊΠΈΡΡ Π°Π·ΠΎΡΠ°, ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠ² Π±ΡΡΡΡΠΎΠ΅ Π²ΠΎΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΡΡΠ΅ΠΏΠ΅Π½Ρ.
Π ΡΡΠΎ ΡΠ°ΠΌΠΎΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎΠ΅: Π΅ΡΠ»ΠΈ Π²Π½ΠΈΠΌΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΠΈΡΠ»Π° Π±ΡΠ΄ΡΡ ΠΏΠΎΠ»ΡΡΠ°ΡΡΡΡ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅, ΠΊΠ°ΠΊΠΈΠ΅ Π±ΡΠ΄ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, ΡΠΎ ΡΡΠ°Π½Π΅Ρ ΠΏΠΎΠ½ΡΡΠ½ΠΎ, ΡΡΠΎ ΡΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ β ΡΡΠΎ ΡΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅ ΠΌΠ°ΡΡΠΈΡΠ½ΠΎΠ΅ ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ΄ Π΄ΡΡΠ³ΠΈΠΌ ΡΠ°ΡΠ°Π΄ΠΎΠΌ. Π Π°Π·Π½ΠΈΡΠ° Π»ΠΈΡΡ Π² ΡΠΎΠΌ, Ρ ΡΠ°Π½ΠΈΠΌ ΠΌΡ ΡΠΈΡΠ»Π° Π² Π΄Π²ΡΠΌΠ΅ΡΠ½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π°Ρ ΠΈΠ»ΠΈ Π² ΠΏΠΎΠ»ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ°.
ΠΠ° ΡΡΠΎΠΌ Π²ΡΡ. ΠΡΠ»ΠΈ Π²Ρ ΡΡΠΈΡΠ°Π΅ΡΠ΅, ΡΡΠΎ Ρ ΡΠΏΡΡΡΠΈΠ» Π΅ΡΡ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈ Π½ΠΈΠΊΠΎΠΌΡ Π½Π΅ Π½ΡΠΆΠ½ΡΠ΅ ΡΠΈΡΠ»Π°, ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π½Π°ΠΏΠΈΡΠΈΡΠ΅ ΠΎΠ± ΡΡΠΎΠΌ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ .
ΠΡΡΡ Π΅ΡΡ ΡΠ°ΠΊΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΊΠ°ΠΊ fast doubling. Π Π°Π±ΠΎΡΠ°Π΅Ρ ΠΊΠ°ΠΊ ΠΈ ΠΌΠ°ΡΡΠΈΡΠ½ΠΎΠ΅ ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π° O(log), Π½ΠΎ Ρ ΠΌΠ΅Π½ΡΡΠ΅ΠΉ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠΎΠΉ Π² Π°ΡΠΈΠΌΠΏΡΠΎΡΠΈΠΊΠ΅ (ΠΈ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅). ΠΡΠ»ΠΈ ΠΊΡΠ°ΡΠΊΠΎ, ΡΠΎ ΡΠ°ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π²Π΅ ΡΠΎΡΠΌΡΠ»Ρ, ΠΎΠΏΠΈΡΠ°ΡΡΡ Π½Π° ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΡΡΡΠΎ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎ ΠΎΡΠΊΠ°ΡΡΠ²Π°ΡΡΡΡ ΠΊ Π²Π΄Π²ΠΎΠ΅ ΠΌΠ΅Π½ΡΡΠΈΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΠΌ:
Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ, ΠΊΡΡΠ°ΡΠΈ, ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½Π°Ρ.
Π‘ΡΠΌΠΌΠ° ΡΠΈΡΠ΅Π» Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ
Π£ΡΠΈΡΡΠ²Π°Ρ ΡΠΈΡΠ»ΠΎ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ n, Π½Π°ΠΉΡΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ f 0 + f 1 + f 2 +β¦. + f n, Π³Π΄Π΅ f i ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ i- Π΅ ΡΠΈΡΠ»ΠΎ Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ. ΠΠΎΠΌΠ½ΠΈΡΠ΅, ΡΡΠΎ f 0 = 0, f 1 = 1, f 2 = 1, f 3 = 2, f 4 = 3, f 5 = 5,β¦
ΠΡΠΈΠΌΠ΅ΡΡ :
ΠΠ΅ΡΠΎΠ΄ 1 (O (n))
ΠΠΎΠ΄Ρ
ΠΎΠ΄ Π³ΡΡΠ±ΠΎΠΉ ΡΠΈΠ»Ρ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΏΡΠΎΡΡ, Π½Π°ΠΉΠ΄ΠΈΡΠ΅ Π²ΡΠ΅ ΡΠΈΡΠ»Π° Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ Π΄ΠΎ f (n) ΠΈ Π·Π°ΡΠ΅ΠΌ ΡΠ»ΠΎΠΆΠΈΡΠ΅ ΠΈΡ
.
// C ++ ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΡΡΠΌΠΌΡ ΡΠΈΡΠ΅Π» Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ
#include
using namespace std;
// ΠΡΡΠΈΡΠ»ΡΠ΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ²ΡΡ ΡΠΈΡΠ΅Π» Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ
int calculateSum( int n)
int sum = fibo[0] + fibo[1];
// ΠΠΎΠ±Π°Π²ΠΈΡΡ ΠΎΡΡΠ°Π²ΡΠΈΠ΅ΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡ
// ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π²ΡΡΠ΅ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ
cout «Sum of Fibonacci numbers is : «
// Java-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ°
// ΡΡΠΌΠΌΠ° ΡΠΈΡΠ΅Π» Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ
// Π²ΡΡΠΈΡΠ»ΡΠ΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ
static int calculateSum( int n)
int fibo[]= new int [n+ 1 ];
fibo[ 0 ] = 0 ; fibo[ 1 ] = 1 ;
int sum = fibo[ 0 ] + fibo[ 1 ];
// ΠΠΎΠ±Π°Π²ΠΈΡΡ ΠΎΡΡΠ°Π²ΡΠΈΠ΅ΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡ
fibo[i] = fibo[i- 1 ]+fibo[i- 2 ];
// ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π²ΡΡΠ΅ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ
public static void main(String args[])
System.out.println( «Sum of Fibonacci» +
» numbers is : » + calculateSum(n));
// ΠΡΠΎΡ ΠΊΠΎΠ΄ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ ΠΠΈΠΊΠΈΡΠΎΠΉ Π’ΠΈΠ²Π°ΡΠΈ.
# Python 3 ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ°
# ΡΡΠΌΠΌΠ° ΡΠΈΡΠ΅Π» Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ
# ΠΡΡΠΈΡΠ»ΡΠ΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ
# ΡΠΈΡΠ»Π° Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ
sm = fibo[ 0 ] + fibo[ 1 ]
# ΠΠΎΠ±Π°Π²ΠΈΡΡ ΠΎΡΡΠ°Π²ΡΠΈΠ΅ΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡ
# ΠΡΠ°ΠΉΠ²Π΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π΄Π»Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ
# Π²ΡΡΠ΅ ΡΡΠ½ΠΊΡΠΈΡ
# ΠΡΠΎΡ ΠΊΠΎΠ΄ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½
# ΠΠΈΠΊΠΈΡΠ° Π’ΠΈΠ²Π°ΡΠΈ.
// C # ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ°
// ΡΡΠΌΠΌΠ° ΡΠΈΡΠ΅Π» Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ
// Π²ΡΡΠΈΡΠ»ΡΠ΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ
static int calculateSum( int n)
int []fibo = new int [n + 1];
int sum = fibo[0] + fibo[1];
// ΠΠΎΠ±Π°Π²ΠΈΡΡ ΠΎΡΡΠ°Π²ΡΠΈΠ΅ΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡ
Console.WriteLine( «Sum of Fibonacci» +
// ΠΡΠΎΡ ΠΊΠΎΠ΄ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ Anuj_67
// PHP ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΡΡΠΌΠΌΡ
// ΡΠΈΡΠ΅Π» Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ
// Π²ΡΡΠΈΡΠ»ΡΠ΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ
// ΡΠΈΡΠ»Π° Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ
// ΠΠΎΠ±Π°Π²ΠΈΡΡ ΠΎΡΡΠ°Π²ΡΠΈΠ΅ΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡ
// ΠΡΠΎΡ ΠΊΠΎΠ΄ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ aj_36
?>
ΠΡΡ ΠΎΠ΄ :
ΠΠ΅ΡΠΎΠ΄ 2 (O (Log n))
ΠΠ΄Π΅Ρ ΡΠΎΡΡΠΎΠΈΡ Π² ΡΠΎΠΌ, ΡΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈ Π²Π·Π°ΠΈΠΌΠΎΡΠ²ΡΠ·Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΡΡΠΌΠΌΠΎΠΉ ΡΠΈΡΠ΅Π» Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ ΠΈ n-ΠΌ ΡΠΈΡΠ»ΠΎΠΌ Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ.
Π‘Π»ΠΎΠΆΠΈΠ² Π²ΡΠ΅ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ, Ρ Π»Π΅Π²ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ ΠΏΠΎΠ»ΡΡΠΈΠΌ
F (0) + F (1) +β¦ F (n-1), ΡΠΎ Π΅ΡΡΡ S (n-1).
Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ,
S (n-1) = F (n + 1) β F (1)
S (n-1) = F (n + 1) β 1
S (n) = F (n + 2) β 1 β (1)
F (n) ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠ΅Π½ΠΈΡΡ Π·Π° O (log n), ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΌΠ΅ΡΠΎΠ΄ 5 ΠΈΠ»ΠΈ ΠΌΠ΅ΡΠΎΠ΄ 6 ΠΈΠ· ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠΈ (ΡΠΌ. ΠΠ΅ΡΠΎΠ΄Ρ 5 ΠΈ 6).
ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½Π°Ρ Π½Π° ΡΠΏΠΎΡΠΎΠ±Π΅ 6 ΡΡΠΎΠ³ΠΎ
// C ++ ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΡΡΠΌΠΌΡ ΡΠΈΡΠ΅Π» Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ Π²
// O (Log n) Π²ΡΠ΅ΠΌΡ.
#include
using namespace std;
const int MAX = 1000;
// Π‘ΠΎΠ·Π΄Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ² Π΄Π»Ρ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΡ
// ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ n-Π΅ ΡΠΈΡΠ»ΠΎ Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ°Π±Π»ΠΈΡΡ f []
// ΠΡΠ»ΠΈ fib (n) ΡΠΆΠ΅ Π²ΡΡΠΈΡΠ»Π΅Π½
// ΠΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌ Π²ΡΡΠ΅ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΡ ΡΠΎΡΠΌΡΠ»Ρ [ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ n & 1 ΡΠ°Π²Π½ΠΎ 1
// Π΅ΡΠ»ΠΈ n Π½Π΅ΡΠ΅ΡΠ½ΠΎ, ΠΈΠ½Π°ΡΠ΅ 0].
f[n] = (n & 1)? (fib(k)*fib(k) + fib(k-1)*fib(k-1))
// ΠΡΡΠΈΡΠ»ΡΠ΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ²ΡΡ ΡΠΈΡΠ΅Π» Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ
int calculateSum( int n)
// ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π²ΡΡΠ΅ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ
cout «Sum of Fibonacci numbers is : «
// Java-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΡΡΠΌΠΌΡ
// ΡΠΈΡΠ΅Π» Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ Π²
// O (Log n) Π²ΡΠ΅ΠΌΡ.
static int MAX = 1000 ;
// Π‘ΠΎΠ·Π΄Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ² Π΄Π»Ρ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΡ
static int f[] = new int [MAX];
// ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ n-ΠΉ Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ
// Π½ΠΎΠΌΠ΅Ρ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠ°Π±Π»ΠΈΡΡ f []
static int fib( int n)
// ΠΡΠ»ΠΈ fib (n) ΡΠΆΠ΅ Π²ΡΡΠΈΡΠ»Π΅Π½
// ΠΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌ Π²ΡΡΠ΅ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΡ ΡΠΎΡΠΌΡΠ»Ρ
// [ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ n & 1 ΡΠ°Π²Π½ΠΎ 1
// Π΅ΡΠ»ΠΈ n Π½Π΅ΡΠ΅ΡΠ½ΠΎ, ΠΈΠ½Π°ΡΠ΅ 0].
// Π²ΡΡΠΈΡΠ»ΡΠ΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ
static int calculateSum( int n)
public static void main(String args[])
System.out.println( «Sum of Fibonacci numbers is : «
/ * ΠΡΠΎΡ ΠΊΠΎΠ΄ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ ΠΠΈΠΊΠΈΡΠΎΠΉ Π’ΠΈΠ²Π°ΡΠΈ. * /
# Python 3 ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΡΡΠΌΠΌΡ
Π§ΠΈΡΠ»ΠΎ Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ Π² O (Log n) Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ.
# Π‘ΠΎΠ·Π΄Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ² Π΄Π»Ρ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΡ
# ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ n-Π΅ ΡΠΈΡΠ»ΠΎ Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ
# ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ°Π±Π»ΠΈΡΡ f []
# ΠΡΠ»ΠΈ fib (n) ΡΠΆΠ΅ Π²ΡΡΠΈΡΠ»Π΅Π½
k = (n + 1 ) / 2 if (n & 1 ) else n / 2
# ΠΡΠΈΠΌΠ΅Π½ΡΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΡ Π²ΡΡΠ΅ ΡΠΎΡΠΌΡΠ»Ρ [ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ n & 1
# ΡΠ°Π²Π½ΠΎ 1, Π΅ΡΠ»ΠΈ n Π½Π΅ΡΠ΅ΡΠ½ΠΎ, ΠΈΠ½Π°ΡΠ΅ 0].
# ΠΡΡΠΈΡΠ»ΡΠ΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ²ΡΡ ΡΠΈΡΠ΅Π» Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ
# ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ° Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π²ΡΡΠ΅ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ
# ΠΡΠΎΡ ΠΊΠΎΠ΄ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½
# Π‘ΠΌΠΈΡΠ° ΠΠΈΠ½Π΅Ρ Π‘Π΅ΠΌΠ²Π°Π»
// C # ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΡΡΠΌΠΌΡ
// ΡΠΈΡΠ΅Π» Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ Π²
// O (Log n) Π²ΡΠ΅ΠΌΡ.
Π§ΠΈΡΠ»ΠΎ Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅
ΠΠ°ΠΌ Π΄Π°Π½ ΠΌΠ°ΡΡΠΈΠ², ΠΈ Π½Π°ΡΠ° Π·Π°Π΄Π°ΡΠ° β ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ, ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ Π»ΠΈ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΌΠ°ΡΡΠΈΠ²Π° Π² ΡΡΠ΄Ρ Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ ΠΈΠ»ΠΈ Π½Π΅Ρ. ΠΡΠ»ΠΈ Π΄Π°, ΡΠΎ Π½Π°ΠΏΠ΅ΡΠ°ΡΠ°ΠΉΡΠ΅ ΡΡΠΎΡ ΡΠ»Π΅ΠΌΠ΅Π½Ρ.
ΠΡΠΈΠΌΠ΅ΡΡ:
// ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° CPP Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° Π½ΠΎΠΌΠ΅ΡΠΎΠ² ΡΠ΅ΡΠΈΠΉ Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ
// Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΌΠ°ΡΡΠΈΠ²Π΅.
#include
using namespace std;
// Π€ΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π½ΠΎΠΌΠ΅ΡΠ°
// ΠΈΠ΄Π΅Π°Π»ΡΠ½ΡΠΉ ΠΊΠ²Π°Π΄ΡΠ°Ρ ΠΈΠ»ΠΈ Π½Π΅Ρ
bool isPerfectSquare( int num)
// Π€ΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ, Π΅ΡΠ»ΠΈ ΡΠΈΡΠ»ΠΎ
// Π² Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ ΠΈΠ»ΠΈ Π½Π΅Ρ
void checkFib( int array[], int n)
int n = sizeof (array) / sizeof (array[0]);
// Java-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° Π½ΠΎΠΌΠ΅ΡΠΎΠ² ΡΡΠ΄ΠΎΠ² Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ
// Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΌΠ°ΡΡΠΈΠ²Π΅
// Π€ΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π½ΠΎΠΌΠ΅ΡΠ°
// ΠΈΠ΄Π΅Π°Π»ΡΠ½ΡΠΉ ΠΊΠ²Π°Π΄ΡΠ°Ρ ΠΈΠ»ΠΈ Π½Π΅Ρ
static boolean isPerfectSquare( int num)
int n = ( int )(Math.sqrt(num));
// Π€ΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ, Π΅ΡΠ»ΠΈ ΡΠΈΡΠ»ΠΎ
// Π² Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ ΠΈΠ»ΠΈ Π½Π΅Ρ
static void checkFib( int array[], int n)
System.out.println( «None Present» );
public static void main(String[] args)
int n = array.length;
// ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΎ ΠΡΠ°ΠΌΠΎΠ΄ ΠΡΠΌΠ°Ρ
# Python ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ°
# ΠΠΎΠΌΠ΅ΡΠ° ΡΠ΅ΡΠΈΠΉ Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ
# Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΌΠ°ΡΡΠΈΠ²Π΅.
n = int (math.sqrt(num))
# Π€ΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ, Π΅ΡΠ»ΠΈ Π½ΠΎΠΌΠ΅Ρ
# Π² Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ ΠΈΠ»ΠΈ Π½Π΅Ρ
def checkFib(array, n):
if (isPerfectSquare( 5 * array[i] * array[i] + 4 ) or
print ( «None present» );
# ΠΡΠΎΡ ΠΊΠΎΠ΄ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½
# ΠΠ½Π°Π½Ρ ΠΠ³Π°ΡΠ²Π°Π».
// C # ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΡΡΠ΄Π° Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ
// ΡΠΈΡΠ»Π° Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΌΠ°ΡΡΠΈΠ²Π΅
// Π€ΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π½ΠΎΠΌΠ΅ΡΠ°
// ΠΈΠ΄Π΅Π°Π»ΡΠ½ΡΠΉ ΠΊΠ²Π°Π΄ΡΠ°Ρ ΠΈΠ»ΠΈ Π½Π΅Ρ
static bool isPerfectSquare( int num)
int n = ( int )(Math.Sqrt(num));
// Π€ΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ, Π΅ΡΠ»ΠΈ ΡΠΈΡΠ»ΠΎ
// Π² Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ ΠΈΠ»ΠΈ Π½Π΅Ρ
static void checkFib( int [] array, int n)
if (isPerfectSquare(5 * array[i] * array[i] + 4) ||
Console.WriteLine( «None Present» );
public static void Main()
int n = array.Length;
// ΠΡΠΎΡ ΠΊΠΎΠ΄ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ Sam007
// PHP ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ°
// Π‘Π΅ΡΠΈΠΉΠ½ΡΠ΅ ΡΠΈΡΠ»Π° Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ
// Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΌΠ°ΡΡΠΈΠ²Π΅.
// Π€ΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ
// ΡΠΈΡΠ»ΠΎ ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎΠ΅
// ΠΊΠ²Π°Π΄ΡΠ°Ρ ΠΈΠ»ΠΈ Π½Π΅Ρ
// Π€ΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ
// Π΅ΡΠ»ΠΈ ΡΠΈΡΠ»ΠΎ
// Π² Π€ΠΈΠ±ΠΎΠ½Π°ΡΡΠΈ ΠΈΠ»ΠΈ Π½Π΅Ρ
echo «None present\n» ;
$array = array (4, 2, 8, 5, 20,
// ΠΡΠΎΡ ΠΊΠΎΠ΄ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ mits.
ΠΡΡ ΠΎΠ΄:
ΠΠΎΠΆΠ°Π»ΡΠΉΡΡΠ°, ΠΏΠΈΡΠΈΡΠ΅ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΡΠ΅ ΡΡΠΎ-ΡΠΎ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ΅, ΠΈΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ ΠΏΠΎ ΠΎΠ±ΡΡΠΆΠ΄Π°Π΅ΠΌΠΎΠΉ Π²ΡΡΠ΅ ΡΠ΅ΠΌΠ΅.