ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° ΠΏΠΎΠΈΡΠΊΠ° ΡΠ΅Π½ΡΡΠ° Π³ΡΠ°ΡΠ°
ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠ΅ ΠΠΠ (i) ΠΎΡ Π²Π΅ΡΡΠΈΠ½Ρ i Π΄ΠΎ Π»ΡΠ±ΠΎΠΉ Π²Π΅ΡΡΠΈΠ½Ρ Π³ΡΠ°ΡΠ° ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠΌ i-ΠΉ ΡΡΡΠΎΠΊΠΈ ΠΌΠ°ΡΡΠΈΡΡ DN, ΠΈΠΌΠ΅ΡΡΠΈΠΌ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅. Π¦Π΅Π½ΡΡΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½Π°Ρ Π²Π΅ΡΡΠΈΠ½Π° Ρ Ρ Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠΈΠΌ ΡΡΠ΅Π΄ΠΈ Π²ΡΠ΅Ρ Π²Π΅ΡΡΠΈΠ½ Π³ΡΠ°ΡΠ° Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΠΠ (Ρ ), Ρ. Π΅. ΡΠ΅Π½ΡΡ — ΡΡΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½Π°Ρ Π²Π΅ΡΡΠΈΠ½Π° Ρ , ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΡΡΠΎΠΊΠ° ΠΌΠ°ΡΡΠΈΡΡ DN, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Ρ Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠΈΠΌ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ. ΠΠ»Π³ΠΎΡΠΈΡΠΌ ΠΠ°Π½ΡΠΈΠ³Π° — ΡΡΠΎΡ… Π§ΠΈΡΠ°ΡΡ Π΅ΡΡ >
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° ΠΏΠΎΠΈΡΠΊΠ° ΡΠ΅Π½ΡΡΠ° Π³ΡΠ°ΡΠ° (ΡΠ΅ΡΠ΅ΡΠ°Ρ, ΠΊΡΡΡΠΎΠ²Π°Ρ, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ)
Π¦Π΅Π½ΡΡΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΡΠ±Π°Ρ Π²Π΅ΡΡΠΈΠ½Π° Ρ Ρ Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠΈΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΠΠ (Ρ ) (ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠ΅ Π²Π΅ΡΡΠΈΠ½Π°-Π²Π΅ΡΡΠΈΠ½Π°), Ρ. Π΅. ΡΠ΅Π½ΡΡ — ΡΡΠΎ Π»ΡΠ±Π°Ρ Π²Π΅ΡΡΠΈΠ½Π° Ρ , ΡΠ°ΠΊΠ°Ρ, ΡΡΠΎ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠ΅ ΠΎΡ Π½Π΅Π΅ Π΄ΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΎΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠ½Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎ.
ΠΠΠ (Ρ ) =min{ΠΠΠ (i)}.
Π¦Π΅Π½ΡΡ ΠΎΡΡΡΠΊΠΈΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΡΡ DN, Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ i, j-Π³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΊΠΎΡΠΎΡΠΎΠΉ — di, j Π΅ΡΡΡ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠ΅Π΅ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠ΅ ΠΎΡ Π²Π΅ΡΡΠΈΠ½Ρ i ΠΊ Π²Π΅ΡΡΠΈΠ½Π΅ j. ΠΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΡΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½Ρ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° Π€Π»ΠΎΠΉΠ΄Π° ΠΈΠ»ΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° ΠΠ°Π½ΡΠΈΠ³Π°.
ΠΠΏΠΈΡΠ΅ΠΌ ΠΈΡ :
ΠΠ»Π³ΠΎΡΠΈΡΠΌ Π€Π»ΠΎΠΉΠ΄Π° ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΏΠΎΠΈΡΠΊΠ° ΠΊΡΠ°ΡΡΠ°ΠΉΡΠΈΡ ΠΏΡΡΠ΅ΠΉ Π² Π³ΡΠ°ΡΠ΅. Π ΠΎΡΠ»ΠΈΡΠΈΠΈ ΠΎΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° ΠΠ΅ΠΉΠΊΡΡΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΈ Π΄ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠΈ Π΄ΠΎ ΠΊΠΎΠ½ΡΠ° ΠΏΠΎΡΡΡΠΎΠΈΡΡ ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π΄Π΅ΡΠ΅Π²ΠΎ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠΈΡ ΠΏΡΡΠ΅ΠΉ ΠΎΡ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠΉ Π²Π΅ΡΡΠΈΠ½Ρ, ΠΌΠ΅ΡΠΎΠ΄ Π€Π»ΠΎΠΉΠ΄Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΠΉΡΠΈ Π΄Π»ΠΈΠ½Ρ Π²ΡΠ΅Ρ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠΈΡ ΠΏΡΡΠ΅ΠΉ Π² Π³ΡΠ°ΡΠ΅. ΠΠΎΠ½Π΅ΡΠ½ΠΎ ΡΡΠ° Π·Π°Π΄Π°ΡΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ΅ΡΠ΅Π½Π° ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡΠ°ΡΠ½ΡΠΌ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° ΠΠ΅ΠΉΠΊΡΡΡΡ (ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π· ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ Π²Π΅ΡΡΠΈΠ½Ρ ΠΎΡ ΠΏΠ΅ΡΠ²ΠΎΠΉ Π΄ΠΎ N-Π½ΠΎΠΉ, ΠΏΠΎΠΊΠ° Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΠΌ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠΈΠ΅ ΠΏΡΡΠΈ ΠΎΡ Π²ΡΠ΅Ρ Π²Π΅ΡΡΠΈΠ½ Π³ΡΠ°ΡΠ°), ΠΎΠ΄Π½Π°ΠΊΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΉ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°Π»Π° Π±Ρ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΡ Π²ΡΡΠΈΡΠ»ΠΈΡΠ΅Π»ΡΠ½ΡΡ Π·Π°ΡΡΠ°Ρ.
ΠΠ»Π³ΠΎΡΠΈΡΠΌ ΠΠ°Π½ΡΠΈΠ³Π° — ΡΡΠΎΡ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° Π€Π»ΠΎΠΉΠ΄Π° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ. ΠΠ΅ΡΠ΅Π½ΡΠΌΠ΅ΡΡΠ΅ΠΌ Π²ΡΠ΅ Π²Π΅ΡΡΠΈΠ½Ρ Π³ΡΠ°ΡΠ° ΠΎΡ 1 Π΄ΠΎ n ΡΠ΅Π»ΡΠΌΠΈ ΡΠΈΡΠ»Π°ΠΌΠΈ ΠΈ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠΈΠΌ ΡΠ΅ΡΠ΅Π· di, jm Π΄Π»ΠΈΠ½Ρ ΠΏΡΠΎΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡΡΠΈ ΠΈΠ· i Π² j Π³Π΄Π΅ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΎΠΌΠ΅ΠΆΡΡΠΎΡΠ½ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Ρ ΠΏΠ΅ΡΠ²ΡΠ΅ m Π²Π΅ΡΡΠΈΠ½ Π³ΡΠ°ΡΠ°. ΠΠ°ΡΡΠΈΡΠ° Dm Π΄Π»ΠΈΠ½ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠΈΡ ΠΏΡΡΠ΅ΠΉ ΠΈΠΌΠ΅Π΅Ρ Π·Π΄Π΅ΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠ½ΠΎΡΡΡ m*m.
ΠΠ΅ΡΠ½Π΅ΠΌΡΡ ΡΠ΅ΠΏΠ΅ΡΡ ΠΊ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° ΠΏΠΎΠΈΡΠΊΠ° ΡΠ΅Π½ΡΡΠ° Π³ΡΠ°ΡΠ°:
ΠΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠ΅ ΠΠΠ (i) ΠΎΡ Π²Π΅ΡΡΠΈΠ½Ρ i Π΄ΠΎ Π»ΡΠ±ΠΎΠΉ Π²Π΅ΡΡΠΈΠ½Ρ Π³ΡΠ°ΡΠ° ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠΌ i-ΠΉ ΡΡΡΠΎΠΊΠΈ ΠΌΠ°ΡΡΠΈΡΡ DN, ΠΈΠΌΠ΅ΡΡΠΈΠΌ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅. Π¦Π΅Π½ΡΡΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½Π°Ρ Π²Π΅ΡΡΠΈΠ½Π° Ρ Ρ Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠΈΠΌ ΡΡΠ΅Π΄ΠΈ Π²ΡΠ΅Ρ Π²Π΅ΡΡΠΈΠ½ Π³ΡΠ°ΡΠ° Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΠΠ (Ρ ), Ρ. Π΅. ΡΠ΅Π½ΡΡ — ΡΡΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½Π°Ρ Π²Π΅ΡΡΠΈΠ½Π° Ρ , ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΡΡΠΎΠΊΠ° ΠΌΠ°ΡΡΠΈΡΡ DN, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Ρ Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠΈΠΌ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ.
ΠΡΠ»ΠΈ ΠΎΠΏΠΈΡΠ°ΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΠΏΠΎΠΈΡΠΊΠ° ΡΠ΅Π½ΡΡΠ° ΠΊΠΎΡΠΎΡΠΊΠΎ, ΡΠΎ ΠΎΠ½ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ.
- 1. Π½Π°Ρ ΠΎΠ΄ΠΈΠΌ D0 — ΠΌΠ°ΡΡΠΈΡΡ, ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ²Π»ΡΡΡΡΡ ai, j — Π΄Π»ΠΈΠ½Ρ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠΈΡ Π΄ΡΠ³.
- 2. ΠΡΠ΅ΠΌ DN — ΠΌΠ°ΡΡΠΈΡΡ Π΄Π»ΠΈΠ½ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠΈΡ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠΉ ΠΏΠΎ Π€Π»ΠΎΠΉΠ΄Ρ ΠΈΠ»ΠΈ ΠΠ°Π½ΡΠ΅Π³Ρ.
- 3. ΠΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌ ΠΠΠ (i) Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π²Π΅ΡΡΠΈΠ½Ρ Π³ΡΠ°ΡΠ°.
- 4. ΠΠ· Π²ΡΠ΅Ρ ΠΠΠ (i) Π²ΡΠ±ΠΈΡΠ°Π΅ΠΌ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ°Ρ Π²Π΅ΡΡΠΈΠ½Π° ΠΈ Π±ΡΠ΄Π΅Ρ ΡΠ΅Π½ΡΡΠΎΠΌ.
ΠΡΠΈΠΌΠ΅Ρ:
ΠΠΎΠΏΡΡΡΠΈΠΌ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΉΡΠΈ ΡΠ΅Π½ΡΡ Π³ΡΠ°ΡΠ° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π° ΡΠΈΡΡΠ½ΠΊΠ΅:
Π ΠΈΡ 1. ΠΡΡ ΠΎΠ΄Π½ΡΠΉ Π³ΡΠ°Ρ
Π‘ΠΎΡΡΠ°Π²ΠΈΠΌ ΠΌΠ°ΡΡΠΈΡΡ Π΄Π»ΠΈΠ½ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠΈΡ Π΄ΡΠ³ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ°ΡΠΎΠΉ Π²Π΅ΡΡΠΈΠ½ — D0, Π² ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ Π΄ΡΠ³ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ Π²Π΅ΡΡΠΈΠ½ΠΎΠΉ i ΠΈ j Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ, ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ai, j ΠΌΠ°ΡΡΠΈΡΡ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ?. ΠΠ°ΡΡΠΈΡΠ° D0:
C ΠΏΠΎΠΌΠΎΡΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° Π€Π»ΠΎΠΉΠ΄Π° ΠΈΠ»ΠΈ ΠΠ°Π½ΡΠ΅Π³Π° ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΠΌΠ°ΡΡΠΈΡΡ Π΄Π»ΠΈΠ½ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠΈΡ ΠΏΡΡΠ΅ΠΉ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ°ΡΠΎΠΉ Π²Π΅ΡΡΠΈΠ½ Π³ΡΠ°ΡΠ°:
Π’Π΅ΠΏΠ΅ΡΡ, ΠΎΡΠ½ΠΎΠ²ΡΠ²Π°ΡΡΡ Π½Π° ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΠΎΠΉ Π½Π°ΠΌΠΈ ΠΌΠ°ΡΡΠΈΡΠ΅ Π΄Π»ΠΈΠ½ ΠΊΡΠ°ΡΡΠ°ΠΉΡΠΈΡ ΠΏΡΡΠ΅ΠΉ, Π½Π°ΠΉΠ΄Π΅ΠΌ ΠΠΠ (i) Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π²Π΅ΡΡΠΈΠ½Ρ Π³ΡΠ°ΡΠ° ΠΠΠ (i)=max{di, j}.
ΠΠΠ (1)=max{d (1, j)}=152.
ΠΠΠ (2)=max{d (2, j)}=122.
ΠΠΠ (3)=max{d (3, j)}=145.
ΠΠΠ (4)=max{d (4, j)}=133.
ΠΠΠ (5)=max{d (5, j)}=197.
ΠΠΠ (6)=max{d (6, j)}=197.
ΠΠΠ (7)=max{d (7, j)}=104.
ΠΠΠ (8)=max{d (8, j)}=200.
Π¦Π΅Π½ΡΡΠΎΠΌ Π³ΡΠ°ΡΠ° ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°ΠΊΠ°Ρ Π²Π΅ΡΡΠΈΠ½Π° x, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΠΠ (x)=min{ΠΠΠ (i)}. ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ ΠΠΠ (7)=104, Π° ΡΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ Π²Π΅ΡΡΠΈΠ½Π° 7 ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΅Π½ΡΡΠΎΠΌ Π³ΡΠ°ΡΠ°.
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ
Π ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠ°ΡΡΠΈ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Π° Π·Π°Π΄Π°ΡΠ° Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΡΠ΅Π½ΡΡΠ°, ΡΠΎΠ³Π»Π°ΡΠ½ΠΎ ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠΌΡ Π²ΡΡΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ. Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ΅Π±Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ Π³ΡΠ°ΡΠ°, Π° Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π²Π΅ΡΡΠΈΠ½ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΡΡ. ΠΠ°ΡΡΠΈΡΠ° ΠΈΡΡ ΠΎΠ΄Π½ΡΡ Π²Π΅ΡΡΠΈΠ½ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΠΎΠΉ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π·Π°Π΄Π°ΡΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠ΅ΡΠ°ΡΡΡΡ ΠΈ Π΄Π»Ρ ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π³ΡΠ°ΡΠΎΠ². ΠΡΠ΅ ΠΈΡΡ ΠΎΠ΄Π½ΡΠ΅ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΡ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡΡΡ Π² ΡΡΡ ΠΌΠ°ΡΡΠΈΡΡ, Π° Π·Π°ΡΠ΅ΠΌ ΡΠΆΠ΅ Π½Π°Π΄ Π½Π΅ΠΉ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ. Π Π°ΡΡΡΠΎΡΠ½ΠΈΠ΅ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠ½Ρ Π² ΡΡ ΠΆΠ΅ ΡΠ°ΠΌΡΡ ΠΎΡΠΌΠ΅ΡΠ°Π΅ΡΡΡ ΠΊΠ°ΠΊ 0, Π΅ΡΠ»ΠΈ ΠΆΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ Π²Π΅ΡΡΠΈΠ½Π°ΠΌΠΈ Π½Π΅Ρ ΠΏΡΡΠΌΠΎΠ³ΠΎ ΠΏΡΡΠΈ, ΡΠΎ ΡΡΠΎ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠ΅ ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΠΊ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΡΠΈΡΠ»ΠΎ, ΡΠ°ΠΊ ΡΡΠΎΠ±Ρ ΡΡΠΌΠΌΠ° ΠΎΡΡΠ°Π»ΡΠ½ΡΡ ΡΠΈΡΠ΅Π» ΡΠΎΡΠ½ΠΎ Π½Π΅ Π±ΡΠ»Π° Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅Π³ΠΎ. ΠΡΠΎ ΡΠ΄Π΅Π»Π°Π½ΠΎ ΠΈΠ·-Π·Π° ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π² ΡΠ·ΡΠΊΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π΅Π»ΡΠ·Ρ Π΄Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΠΎΡΡΠΈ ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π΅.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ·Π΄Π°Π½Π½ΡΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΠΊΠ»Π°ΡΡΠΎΠ² Π±ΡΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΊΠ»Π°ΡΡΡ, Π½Π°Ρ ΠΎΠ΄ΡΡΠΈΠ΅ΡΡ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ΅, ΡΡΠ΅Π΄ΠΈ ΠΊΠΎΡΠΎΡΡΡ :
java.io.* - ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΊΠ»Π°ΡΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΏΠΎΡΠΎΠΊΠΎΠΌ Π²Π²ΠΎΠ΄Π°/Π²ΡΠ²ΠΎΠ΄Π°.
java.util.Scanner — ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΊΠ»Π°ΡΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π²Π²ΠΎΠ΄ΠΎΠΌ/Π²ΡΠ²ΠΎΠ΄ΠΎΠΌ ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΈΠ· ΡΠ°ΠΉΠ»Π° ΠΈ ΡΠ°Π±ΠΎΡΡ Ρ Π½ΠΈΠΌ.
ΠΡΠΈΠ²Π΅Π΄Π΅ΠΌ Π²Π΅ΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ:
ΡΠ°ΠΉΠ» GraphCenterFinder.java
public class GraphCenterFinder {.
//ΠΠ΅ΡΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π°.
//Ρ ΠΌΠ°ΡΡΠΈΡΠ΅ΠΉ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π³ΡΠ°ΡΠ°.
//Π²ΡΠ·ΠΎΠ²: java GraphCenterFinder ΠΈΠΌΡ_ΡΠ°ΠΉΠ»Π°.txt.
public static void main (String[] args) {.
//ΠΡΠΎΠ²Π΅ΡΠΊΠ° ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΡΡΠΈ ΡΠΊΠ°Π·Π°Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ².
switch (args.length) {.
case 0:
System.out.println («ΠΡΠΈΠ±ΠΊΠ°! ΠΠ΅ ΡΠΊΠ°Π·Π°Π½ΠΎ ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π°.»);
System.exit (-1);
break;
case 1:
break;
default: Π³ΡΠ°Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π²Π΅ΡΡΠΈΠ½Π° ΠΊΠΎΠ΄.
System.out.println («ΠΠ΅Π²Π΅ΡΠ½ΠΎ ΡΠΊΠ°Π·Π°Π½Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.»);
System.exit (-1);
break;
}.
String fileName = args[0];
Graph graph = new Graph («Graph», fileName);
graph.findGraph ();
graph.getGraph ();
graph.floydAlgorithm ();
graph.CenterFinder ();
}.
}.
ΡΠ°ΠΉΠ» Graph.java
public class Graph {.
//ΠΠΌΡ ΡΠ°ΠΉΠ»Π°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅Π³ΠΎ Π³ΡΠ°Ρ.
private String fileName;
private String name;
private int vertexCount; //ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π²Π΅ΡΡΠΈΠ½ Π² Π³ΡΠ°ΡΠ΅.
private int[][] graph; // ΠΠ°ΡΡΠΈΡΠ° Ρ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ Π³ΡΠ°ΡΠΎΠΌ.
private int[][] shortcut; //ΠΠ°ΡΡΠΈΡΠ° ΠΊΡΠ°ΡΡΠ°ΠΉΡΠΈΡ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠΉ.
/*eccentricity — ΠΠ°ΡΡΠΈΠ² ΡΠΊΡΡΠ΅Π½ΡΡΠΈΡΠΈΡΠ΅ΡΠΎΠ².
* Π² ΡΡΠΎΠΌ ΠΎΠ΄Π½ΠΎΠΌΠ΅ΡΠ½ΠΎΠΌ ΠΌΠ°ΡΡΠΈΠ²Π΅ ΠΎΠΏΠ΅ΡΠ΅Π΄Π΅Π»Π΅Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΎΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠ½Ρ Π³ΡΠ°ΡΠ°.
* Π΄ΠΎ ΡΠ΅ΠΊΡΡΠ΅ΠΉ Π²Π΅ΡΡΠΈΠ½Ρ.
* Π‘Π°ΠΌΠ° ΡΠ΄Π°Π»Π΅Π½Π½Π°Ρ Π²Π΅ΡΡΠΈΠ½Π° Π½Π΅ ΡΠ°ΠΊ Π²Π°ΠΆΠ½Π°, Π½Π΅ΠΎΡ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π½Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠ΅.
* */.
private int eccentricity[];
/*ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ minEccentricity ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ ΠΈ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΡΠΊΠΎΠΌΠΎΠΉ.
* Π²Π΅Π»ΠΈΡΠΈΠ½ΠΎΠΉ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°ΡΡΠ΅ΠΉ ΡΠ°Π΄ΠΈΡΡ Π³ΡΠ°ΡΠ°. ΠΠ΅ΡΡΠΈΠ½Ρ, Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΡΠΎΡΡΡ ΡΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ Ρ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ.
- * ΡΠ²Π»ΡΡΡΡΡ ΡΠ΅Π½ΡΡΠ°ΠΌΠΈ Π³ΡΠ°ΡΠ°.
- * */
private int minEccentricity;
//ΠΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ
Graph (String nameParam, String fileNameParam){.
this.name = nameParam;
this.fileName = fileNameParam;
}.
public void findGraph () {.
char ch;
try (Scanner fileScanner = new Scanner (new File (fileName))) {.
do {.
ch = fileScanner. next ().charAt (0);
if (ch == '#') {.
if (fileScanner.hasNextInt ()) {.
vertexCount = fileScanner. nextInt ();
//Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈ Π΅Π³ΠΎ ΠΎΠ±Π½ΡΠ»Π΅Π½ΠΈΠ΅.
graph = new int[vertexCount][vertexCount];
for (int i = 0; i < vertexCount; i++).
for (int j = 0; j < vertexCount; j++).
graph[i][j] = 0;
//Π§ΡΠ΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΡΡ Π³ΡΠ°ΡΠ° ΠΈΠ· ΡΠ°ΠΉΠ»Π°.
for (int i = 0; i < vertexCount; i++){.
for (int j = 0; j < vertexCount; j++) {.
if (fileScanner.hasNextInt ()){.
graph[i][j] = fileScanner. nextInt ();
}.
else {.
if ('-' == fileScanner. next ().charAt (0)).
graph[i][j] = Integer. MAX_VALUE/100;//ΠΡΠΈΠΌΠ΅ΠΌ Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΠΎΡΡΡ Π·Π° ΡΠΎΡΡΡ Π΄ΠΎΠ»Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, ΡΡΠΎΠ± Π½Π΅ ΠΈΠΌΠ΅ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΏΡΠΈ ΡΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΡ ΡΠΈΡΠ΅Π».
}.
}.
}.
}.
}.
} while (fileScanner.hasNext ());
} catch (FileNotFoundException e) {.
System.err.println («ΠΡΠΈΠ±ΠΊΠ°! ΠΠ°Π½Π½ΡΠΉ ΡΠ°ΠΉΠ» Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½»);
System.exit (-1);
}.
}.
public void getGraph () {.
System.out.println («ΠΡΡ ΠΎΠ΄Π½ΡΠΉ Π³ΡΠ°Ρ:»);
for (int i = 0; i < vertexCount; i++){.
for (int j = 0; j < vertexCount; j++){.
if (graph[i][j] == Integer. MAX_VALUE/100) {.
System.out.print («- «);
}.
else.
System.out.print (graph[i][j] + ««);
}.
System.out.println ();
}.
}.
//ΠΠ»Π³ΠΎΡΠΈΡΠΌ Π€Π»ΠΎΠΉΠ΄Π°-Π£ΠΎΡΡΠ΅ΡΠ° Π΄Π»Ρ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ Π²ΡΠ΅ΠΌΠΈ Π²Π΅ΡΡΠΈΠ½Π°ΠΌΠΈ.
public void floydAlgorithm () {.
shortcut = new int[vertexCount][vertexCount];
for (int i = 0; i < vertexCount; i++).
for (int j = 0; j < vertexCount; j++).
shortcut[i][j] = graph[i][j];
for (int k = 0; k < vertexCount; k++).
for (int i = 0; i < vertexCount; i++).
for (int j = 0; j < vertexCount; j++).
if (shortcut[i][k] ≠ 0 && shortcut[k][j] ≠ 0 && i ≠ j).
if (shortcut[i][k] + shortcut[k][j] < shortcut[i][j] || shortcut[i][j] == 0).
shortcut[i][j] = shortcut[i][k] + shortcut[k][j];
System.out.println («Π’Π°Π±Π»ΠΈΡΠ° ΠΊΡΠ°ΡΡΠ°ΠΉΡΠΈΡ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρ Π²Π΅ΡΡΠΈΠ½Π°ΠΌΠΈ, Π½Π°ΠΉΠ΄Π΅Π½Π½Π°Ρ ΡΠΎΠ³Π»Π°ΡΠ½ΠΎ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ Π€Π»ΠΎΠΉΠ΄Π°-Π£ΠΎΡΡΠ΅ΡΠ°»);
for (int i = 0; i < vertexCount; i++){.
for (int j = 0; j < vertexCount; j++).
System.out.print (shortcut[i][j] + ««);
System.out.println ();
}.
}.
//Π€ΡΠ½ΠΊΡΠΈΡ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠΈΡ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠΉ ΠΎΡ Π²Π΅ΡΡΠΈΠ½.
public void CenterFinder () {.
int max;
eccentricity = new int[vertexCount];
System.out.println («Π Π°ΡΡΡΠΎΡΠ½ΠΈΠ΅ ΠΎΡ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· Π²Π΅ΡΡΠΈΠ½ Π΄ΠΎ Π΄ΡΡΠ³ΠΎΠΉ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ (ΡΡ ) Π²Π΅ΡΡΠΈΠ½ (Ρ)»);
for (int i = 0; i < vertexCount; i++){.
max = shortcut[i][0];
for (int j = 0; j < vertexCount; j++){.
if (shortcut[i][j] > max) {.
max = shortcut[i][j];
}.
}.
eccentricity[i] = max;
System.out.println («MBB (» + (i+1) + «) = «+ eccentricity[i]);
}.
minEccentricity = eccentricity[0];
for (int i = 0; i < vertexCount; i++){.
if (eccentricity[i] < minEccentricity).
minEccentricity = eccentricity[i];
}.
System.out.println («Π Π°ΡΡΡΠΎΡΠ½ΠΈΠ΅ ΠΎΡ ΡΠ΅Π½ΡΡΠ° Π³ΡΠ°ΡΠ° Π΄ΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ (ΠΎΠΉ) Π²Π΅ΡΡΠΈΠ½ (Ρ) — «+ minEccentricity);
/*ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ ΡΠΊΡΡΠ΅Π½ΡΡΠΈΡΠΈΡΠ΅Ρ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ Ρ ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠ½Ρ, Π° Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ .
- * Π ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π²ΡΠ΅ Π²Π΅ΡΡΠΈΠ½Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠΌΠ΅ΡΡ ΡΠ°ΠΊΠΎΠ΅ ΠΆΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ²Π»ΡΡΡΡΡ ΡΠ΅Π½ΡΡΠ°ΠΌΠΈ Π³ΡΠ°ΡΠ°
- * */
System.out.print («Π¦Π΅Π½ΡΡΠΎΠΌ Π³ΡΠ°ΡΠ° ΡΠ²Π»Ρ (Ρ)ΡΡΡ Π²Π΅ΡΡΠΈΠ½Π° (Ρ): «);
for (int i = 0; i < vertexCount; i++){.
if (eccentricity[i] == minEccentricity).
System.out.println ((i+1) + ««);
}.
}.
}.
Π Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π·Π°Π½ΠΎΡΡΡΡΡ ΡΠ΅ΡΠ΅Π· ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΡΠ°ΠΉΠ», ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π°Π·Π²Π°Π½ ΠΊΠ°ΠΊ ΡΠ³ΠΎΠ΄Π½ΠΎ, ΠΎΠ΄Π½Π°ΠΊΠΎ Π΅Π³ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΊΠ°Π·Π°ΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΏΡΠΈ Π·Π°ΠΏΡΡΠΊΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ°. Π ΡΠ°ΠΌΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡΡ ΠΏΠΎ ΠΏΠΎΡΡΠ΄ΠΊΡ:
Π ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ Π±ΡΠΊΠ²Π°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ, ΡΡΠΎ Π·Π° Π½Π΅ΠΉ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠΈΡΠ»ΠΎ. ΠΠΎ Π²ΡΠΎΡΠΎΠΉ ΡΡΡΠΎΠΊΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ ΡΠΈΡΠ»ΠΎ, ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°ΡΡΠ΅Π΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π²Π΅ΡΡΠΈΠ½ Π² ΠΌΠ°ΡΡΠΈΡΠ΅.
ΠΠ°Π»Π΅Π΅ ΠΏΠΎ ΠΏΠΎΡΡΠ΄ΠΊΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΡΡ ΡΠ°ΡΡΡΠΎΡΠ½ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρ Π²Π΅ΡΡΠΈΠ½Π°ΠΌΠΈ ΠΌΠ°ΡΡΠΈΡΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π±ΡΡΡ ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΠΎΠΉ, ΡΠΎ Π΅ΡΡΡ Π² Π½Π΅ΠΉ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΡΠΎΠΊ ΠΈ ΡΡΠΎΠ»Π±ΡΠΎΠ². ΠΠΈΠ°Π³ΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΠ°Π²Π½Ρ Π½ΡΠ»Ρ, Π½Ρ, Π° Π²Π΅ΡΡΠΈΠ½Ρ, Π½Π΅ ΠΈΠΌΠ΅ΡΡΠΈΠ΅ ΠΏΡΡΠΌΠΎΠ³ΠΎ ΠΏΡΡΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°ΡΡΡΡ ΡΠ΅ΡΠ΅Π· Π΄Π΅ΡΠΈΡ (-). ΠΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°ΡΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΈ ΡΠ°Π·Π΄Π΅Π»ΡΡΡΡΡ ΠΏΡΠΎΠ±Π΅Π»ΠΎΠΌ Π΄ΡΡΠ³ ΠΎΡ Π΄ΡΡΠ³Π°. ΠΡΠ»ΠΈ ΠΆΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ ΡΠ΅Π±ΡΠ° ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ Π²Π΅ΡΡΠΈΠ½Ρ, ΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡΡΡΠ΅ΡΡΠ²ΠΈΡΡ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ ΡΡΡΠΎΠΊΠΈ.
ΠΠ»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΡΠΊΠ°Π·Π°ΡΡ ΡΠ°ΠΉΠ», ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΠΈΡΡ ΠΎΠ΄Π½ΡΡ ΠΌΠ°ΡΡΠΈΡΡ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΠΈΠΌΡ ΡΡΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΏΡΠΈ Π²ΡΠ·ΠΎΠ²Π΅ Π³Π»Π°Π²Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ. ΠΡΠΈ ΡΡΠΎΠΌ Π΅ΡΠ»ΠΈ ΡΠ°ΠΉΠ» ΡΠΊΠ°Π·Π°Π½ Π½Π΅Π²Π΅ΡΠ½ΠΎ ΠΈΠ»ΠΈ Π΅ΡΠ»ΠΈ ΠΎΠ½ Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π΅ Π±ΡΠ» ΡΠΊΠ°Π·Π°Π½, ΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° ΡΠΎΠΎΠ±ΡΠΈΡ ΠΎΠ± ΡΡΠΎΠΌ ΠΈ Π²ΡΠ΄Π°ΡΡ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅.