CODE%FESTIVAL%2016%Final
AtCoder %%
(English%editorial%is%at%the%bo?om.)
S
• L0 IA CA 6 216HC VH O
• W C F D E• C T D E
0 12 32 4 6 +
• K 7 KD XF• 7• V• T DX S
• – E 7 E ,
• <– < Y L < X7
– Y C < K
• < X 7– < K 7 –
• = K 7 – =– = -‐‑‒ 7 E =
• O L = 7 K = Y– E = 7 -‐‑‒ =
• X = ADX N 5• I 7
– = ( ) ( )• K Y
• – K 7 K I
• ~∼ L
• – O O K
6 0 1 +
• 5 K• n n V N n• o B UC
A o M O V
• – 5 )
– )
– V o 2 S 2 )
• – 5 2
• o S o• U o
– E V T Kn• K O MOo U
– 0 o L– 0 i,0 L
• 6 5 O L
• o S L• o N• MS
Ln L– M L
S L• d T• 5 2
M
D
E
F
I
D
E
F
0 12 2 /5 (
• X w• < X x Sw• N x X Op N X 6 O
w T w• w X w
• – ( )
– 6 )
– < )
• x 6 v | w
• I6-‐‑‒
v1 v9
1
11
11
11
21
99
99
99
• w
• x S
v1 v9
1
11
11
11
21
99
99
99
• xX
v1 v9
1
11
11
11
21
99
99
99
• T X pw–
• v D | v 6 D | w• F F F F w• F F , F F C= w
– x F F F F w–
• aw w• F F X w aw
– iT w• aw
– X 6 w– vp
• 6 vX p 6 (– 6-‐‑‒ ( s ) )– x S S– vX Lp 6 (M | | ix ix a S• X 6 w
– ST | ( X xw
• p– 6 v | w– | yaw 6 w |I
• | (– T S I
• v D | v 6 D | p w• w
• – N aw wO
• X x– N aw T
X wO x S
• N X wO– w VS X Sw I
• Sw D w• F F F F v x SS X wL E wM– E X x Sw w
» L E X x S S SXM• D E aw v D
aw T w X w
• N X wO– w VS iT X
Sw I• D E w• F F F F v x SS X w– iT X w I
xu A w– S I Sw X xu
A w» L SXM
• D E D A E awv D E aw T
w X w
<6 4 +)*.
• s– j T [ [ g– P dTn | 4 fsk s g
x ~∼T * P g d x• ; k x
• – * ; *)*+– ) 4 *)*+
• – ; 4 *).
• 6=– C AF 2 F d– C A) 2 ) n ]–
• DLN F2*0 F1;0 F DLN 2 )0 12 ; +0 2 FC A 2 F C A C AF 4 (F 0
– C A; C A+;• C A; li | x• x F ; * l T; +;
x F p T+;– < ; ILE ;
• < S ;(F * F ; 2 < ; ILE ;
• k– ) | -‐‑‒) | m
• < ILE ;
• p T pn o O* O+ O * k
– 4 O* O+ O *– O* O+ O *
• O ; xk d TOp
• OF V– – x O * x xk
• in |T |[ s x[ kgx ~∼T lx kg dT ~∼
g• rs O
– O is | k– |xTO * x
• < ILE, ;
• f x
=6 ? :A4; +)*. EP
• 4 TI VS V FEO SSO IV– : W EPP S I SSO I E FI FEOIH TI VI S H– LI WLI I E I [ SSO IV F IEW EPP S WLI VTI H4 VI S HV [ SSO IV E FI FEOIH TI VI S H E WI E HV
• S E VI S HV HSIV W WEOI WS T ITE I EWPIEVW < SSO IV3
• S VW E WV– * e < e *)*+– ) e 4 e *)*+
• 4HH W S EP S VW E WV S TE W EP V S I– < 4 e *).
• 6 E S E !6– HTC D 2 WLI W I W WEOIV WS T ITE I SSO IV– : W EP ]EW S / HTC)D 2 ) f S WLI SWLI EP IV– E V W S /
• S ! 2*0 1<0 S !N 2 )0 N 12 < +0 N 2HTCND 2 !HTCND HTC D 4 N( 0
– 4 V I / WLI EP I E S HTC<D WL S L HTC+<D• <SWI WLEW HTC<D V SW I IVVE P E S WLI
– I S TPI[ W / =!< PS <• =!c!<( *e e< 2 =!< PS <
• 6I HI WLI FI S W IV WS IEW SSO IV VW– :WI EW S ) W IV WS E S H -‐‑‒) W IV V I S L
• : WLI STW EP VW EWI SSO IV E I IEWI =!PS < W IV
• ;IW WLI FI S W IV SSO IV E I IEWI FI OE H WLI S VI W I FI S VI S HV SSO IVE I FEOIH FI V* V+ VO * IVTI W IP– LI WSWEP W I WEOI / 4 O !V* V+ VO *– LI FI S SSO IV T ITE IH/ V* V+ d VO *
• I VW H WLI TSVV FPI V S V LI WLIT SH W S V V EW PIEVW <
• LEW E I WLI STW EP EP IV S V 3– LI VLS PH FI EV EV TSVV FPI – LEW V WLI E[ E H EP IV E S V VLS PH H aI FEW SVW *• =WLI VI F V FW E W * S WLI E[ E H EHH * WS WLI
WLI T SH W E FI IEVIH L PI OIIT WLI V PIEH WS ES I Ib I W H VW F W S
• S WS H STW EP V– I S F E VIE L S WLI E[ EP I E S V !PIW W FI– LI VI F WI S I S WLI E[ TSVV FPI FI SS I IV S * E S V
• LI W I S TPI[ W / =!PS , <
• EW L S W S S I S LI PW TP FI V
0 12 32 ) (+
F
• j O• ( O [ 6 j• i d i
k TF
• – ) N N *– ( N 6 N *
• i( k] dj P) j T ( P
• k i dP– k– j j
• ( D ( T ] dj i• ( D] dj T j i O D)
] dj T ( i O• dD] dj k ( ] i j] d
j i O D O
• 1 I• 1 j k PTF
– C= j [ = j = i ]• dkD j M dP
– PO– i ] Li PjT
• i ] i Pdj– j M ] V
• ( i i• ( i i P i
– ( i k ( p j OD j i j i V
• j i P kF– k i d P
– P kD 1 [ dSP
• P1– C= =A = -‐‑‒ j [ DA j i d
PdD ( p j O j– E C= =( =( -‐‑‒ (– E
• C= ( =A ( = -‐‑‒ C= =A = A– i P j i
• C= ( =A = -‐‑‒ C= =A = A– ( p i P j i
• C= ( =A =A -‐‑‒ C= =A =– ( p j j i
– E C=6 = =– E 6 )
4 56 76 29 ) (-‐‑‒
• [• = [ X
– FN2F 3F 4F [ X o• 2F 3F 4F• 3F 2F ( 4F (• 2F ( 3F ( 4F )• 3F ( 2F ) 4F•
•
• – ) S S )– ( S = S )– ( S 4F S (
• [ ]n o [ V• mVn
– o X• L c nV
A A+1 A+2 A+3
B+2 B+3B+1B
MMMC
C+1
C+2
C+3
C+4
C+5
C+6
• mVn– o X– L ] Xn O
• 4 ( L o 4 c n L2 3 lnV g
A A+1 A+2 A+3
B+2 B+3B+1B
MMMC
C+1
C+2
C+3
C+4
C+5
C+6
• mVn– ] XnV
A A+1 A+2 A+3
B+2 B+3B+1B
MMMC
C+1
C+2
C+3
C+4
C+5
C+6
• mVn– ] XnV
A A+1 A+2 A+3
B+2 B+3B+1B
MMMC
C+1
C+2
C+3
C+4
C+5
C+6
• mVn– ] XnV
A A+1 A+2 A+3
B+2 B+3B+1B
MMMC
C+1
C+2
C+3
C+4
C+5
C+6
• mVn– ] XnV
A A+1 A+2 A+3
B+2 B+3B+1B
MMMC
C+1
C+2
C+3
C+4
C+5
C+6
• mVn– ] XnV
A A+1 A+2 A+3
B+2 B+3B+1B
MMMC
C+1
C+2
C+3
C+4
C+5
C+6
• o– 2 3 4– 2 F 2 ( F 4 ( )F– 3 F 3 ( F 4 ) )F
A A+1 A+2 A+3
B+2 B+3B+1B
MMMC
C+1
C+2
C+3
C+4
C+5
C+6
• o– 2 3 4– 2 F 2 ( F 4 ( )F– 3 F 3 ( F 4 ) )F
• i L n
A A+1 A+2 A+3
B+2 B+3B+1B
MMMC
C+1
C+2
C+3
C+4
C+5
C+6
• li Lo [
– [ nV
0
(
2
3,
+
.
-‐‑‒
• L [n V
• oL [ = lii Lo V
0
(
2
3,
+
.
-‐‑‒
• – N F ( F A )F– o nV X X
• ( A• L mVnL Qm ~∼
i lnV–
• DBFC 1 F F ( L( DBFC T o) A mVn DB C 1 FI DB C A ( F mVnL DBF (C 1 FI DBF (C DBFC )
nV– L ( i i
• – N =– N = E =
-‐‑‒ +
4;56 6=> 39 ( ,
• ~∼ ~∼ j p x ~∼ j | |b [ s
– b qX a b|– [ X ~∼ | jd [~∼ X
~∼ i ~∼ j e | ip ne
– j iu x– ~∼ exo ~∼d ~∼ ~∼– b ~∼ |q f s
• ~∼ ~∼ h Xe i j~∼ X | e [ ~∼
• – ) (– ~∼ ~∼ ~∼ ,
– ~∼ ~∼ ~∼ ~∼ (– ~∼ ~∼ ~∼ -‐‑‒
• is• ~∼ ~∼sm ~∼ | ~∼ j e X o|
is~∼j– ~∼ ex u X jiu
• efo X ~∼ iq ~∼ f|[ ~∼ – e– ~∼ iqx X ~∼ | ~∼ ~∼sm
a iq– j – x X | j qx | i x |
• – ~∼ ~∼ ~∼ ja n
• 5< ]–
• EOAI 1 ~∼ j I ~∼ X ~∼ j I ~∼ |di x k~∼ ~∼ [ ~∼ ~∼
– x qX3AI 3AI | eo |q s– EOA 1 XEOA( 3A 3A( j
– • EOAI 1 LCT 3A SL 3AI V3A EOA I0
– x qX3AI I ~∼ ~∼ so s
• o j X | – e
• LCT 3A SL 3AI V3A EOA I0– o | xe
• EOAI ~∼ | s– LCT 3A SL 3AI V3A EOA I 0
• EOAI ~∼ |i e• s o
– LCT 3A SL 3AI V3A EOA I01 1 LCT 3A ( ) SL 3AI V3A EOA I 0
( ) + ( )– s – X– EOAI 1 LCT EOAI 3AI 3AI EOAI
• o ; X | f
• EO~∼ | s X– EOAI 1 LCT EOAI 3AI 3AI EOAI
1 EOAI 3AI– EOAI i 3AI e n~∼
| e– ~∼ f [ | q se
• r Xa ~∼ j ( ~∼ | e d Xb ~∼ ~∼3A 3A( d
• i~∼ [j e– ~∼ [ | jd [| s
• [ X x [ i
– a X ~∼ ~∼ | s– a X ~∼ ~∼ X | s
• – k– T 1 3A
N I1 I 21 ) I T 1 CD T 3AIC 1 T 3A 3A(
– o o |s– 3A pux k~∼ C | f|qn e
– 3A 3A( ~∼ ex Xq o |s
• 3A j | ke– 3A j -‐‑‒ ~∼ XCD T 3AI | T 3AI d– o~∼ k 3A SL 3A) V3A
• | X SL 3A) V3A 3A ~∼ |of– d X3A SL 3A) V3A ~∼ j n e
• SL 3A) V3A , d | u
• 3A j pe– ~∼ f 5< [
• EOA A 1 ~∼ N I j x k~∼ T ~∼j d x k~∼ T ~∼
• EOA) A 1 XEOA A3A j• EOA A 1 EOA ACD 3A
– 1, 3A) 1+ 3A 1) 3A+ 1
k 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
dp[3][k] 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
dp[4][k] 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10
dp[5][k] 2 3 4 5 4 3 2 1 0 1 2 3 4 5 6 7
dp[6][k] 4 5 4 3 2 3 4 5 4 3 2 1 0 1 2 3
• EOA | qxe– 5< [ ~∼– EOA XEOA 3A n qXEOA A VEOA A3A
[ qx ~∼ | nx ~∼| e
k 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
dp[3][k] 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
dp[4][k] 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10
dp[5][k] 2 3 4 5 4 3 2 1 0 1 2 3 4 5 6 7
dp[6][k] 4 5 4 3 2 3 4 5 4 3 2 1 0 1 2 3
• EOA | qxe– 5< [ ~∼– EOA XEOA 3A n qXEOA A VEOA A3A
[ qx ~∼ | nx ~∼| e
k 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
dp[3][k] 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
dp[4][k] 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10
dp[5][k] 2 3 4 5 4 3 2 1 0 1 2 3 4 5 6 7
dp[6][k] 4 5 4 3 2 3 4 5 4 3 2 1 0 1 2 3
• EOA | qxe– 5< [ ~∼– EOA XEOA 3A n qXEOA A VEOA A3A
[ qx ~∼ | nx ~∼| e
k 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
dp[3][k] 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
dp[4][k] 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10
dp[5][k] 2 3 4 5 4 3 2 1 0 1 2 3 4 5 6 7
dp[6][k] 4 5 4 3 2 3 4 5 4 3 2 1 0 1 2 3
• EOA | qxe– 5< [ ~∼– EOA XEOA 3A n qXEOA A VEOA A3A
[ qx ~∼ | nx ~∼| e– XEOA ~∼ | EOA A VEOA A3A |OSq e X efo q en EOA j• ~∼OS jqxe~∼ XEFPSF f e
– EOA i EOA k~∼ ; 3A d XEOA k~∼ ; SL 3A) V3A• X SL 3A) V3A , ~∼ X | f
67 7= *()-‐‑‒
• 9 a s• d s
d• EFD )(/ ʻ‘
• – ) 9 *((
• a• ” s w• w
– – w
• a• d c d w
• sw s
• O s “a “ d
w
• “ “w s
– • )• *• )• *
– d a
• “ “w s
– d a a– d a
• HIA d b• HIA d• *
– “ w d aw d b
• – p oc– o Sʼ’ T “
w
• “ c– LABCD s a w
• S-‐‑‒ * 1 )* T– LAABC a
• s a S w T– A HIA s a ʻ‘
a
• a “w “ a
• a “ s aa w
b w• w w
– ) , oc s• a w “• V “• W “
– pw ʻ‘ d V W– O d–
• m “• w• s V W ʻ‘
– s• s ʻ‘
– aV aW s• V W a ʻ‘
• V W a•
– – V W a ʼ’
ʼ’• ! 4 !4 1 *4 !EFD *
– V W• W V W ʻ‘ V Wa ʼ’
– s = s *!= )
• “ *!
• ʼ’ ʻ‘– 9 a w ” s– “ c– “ *!9 c
• !9 a
2 34 4 7=18 ( +
• • ru nk
e• g e i
• – )– *
• e S– A r k A e l
e
• g
• e S• ir
• e e nk
N
• u n S |– e
• u g|u n u e g– r–
N
• • g cr
– cr• cr T | g g u n
– c |c u Sr
– 316u n u
• c O
N
• – u r
• c O N
N
• – cr
• l– u uVo o– kek k
N
• – J–
• kle ek u kg cr
– | e e u• u p ku e k
• – *
• g S r
– c u e• rg r Su g
• – S
• – EGF L e L– g L L– AD L L
• e Og
• – = / * ( +(– 4 / * * ( +)(– / +– 4 CE = 4 CE = ) r
• g u g
• ) | g
• re ee g r
– L ( CE– L )
• – | |u |
• | k u u |•
– r re u g u
– o ug– u |
u r– | g u g
• – u 3 r– kle 3 u ek
e 3 g– u2 O i g
• – 3 u– 3 (
– u u
– I u• k uV g
– n )
dir[N][N]'// uused[N][N]'// k ( false)'state[N][N]'// DFS u n ( false)'bool'dfs(i,j)'{'//i j | ek''if'(used[i][j])'return'false;'''if'(state[i][j])'{'''''state[i][j]'='false;'''''return'true;'''}'''state[i][j]'='true;'''cur_dir'='dir[i][j];'''for'((i',j')':'(i,j) cur_dir u kr u u )'{''' 'if'(!dfs(i',j'))'{'
'''dir[i'][j']'='cur_dir;''''if'(state[i][j])'{''''''state[i][j]'='false;''''''return'true;''''}'else'{''''''return'dfs(i,j);''''}''}'
''}'''state[i][j]'='false;'''used[i][j]'='true;'''output(i,j);'//(i,j) dir[i][j]''return'false;'}'
01,2
• F D E H CD C G D GC6 E C 6 IC E 6 A D DC
D
• C D 6• CE G H E E 6 C G D CD C
/
2 34 54 <6=17 ( , 5I A
• < E E A E O N EL A I ED ( ONI S• E ECS A ES NF O N EL SN CN E EWACS X
ONI S• V I E LI ILIYI S E LAWILTL CN E NF A N ED
O N EL• 5I D A X TC ES
• 2N S AI S– c c -‐‑‒
/
• E VA S SN D S E LI ILIYED LAWILTL CN ENF A N ED O N EL– 5N EAC I SE E SA SI F NL SE S IF IS I ON I E SN
E ECS A T ES NF ( b SNSA I– < E A TE NF V E S E E T S I ON I E FN S E SSILE I S E A VE
/
• <E SI IF IS I ON I E SN E ECS A T ES NF ( bSNSA I
– 1CSTA X IS I A VAX ON I E IF S E TL NF S NT I NA N E• 7ES E A TL E TC S AS S E TL NF S NT I A E XN A N E– S E TL NF c S E TL NF
• < E S E TL NF A D DIaE X E S A– c S E TL NF
• < T VE CA ELN E AS LN S N E E ELE S F NL SN LA ES E TL EPTA SN
• 5N I SA CE V E 0 (.– I CE 0+ A D ( ) + (0) VE CA E ECS ( +
• 6F S E DIaE E CE I DN NS ELN E A XS I
/ /
• 1 NS E N TSIN– 2 NN E O N EL I DE CE DI N DE NF A I ED CN EV I E EEOI S E SNSA CN E AS LN S• A IDASED X LAS ELASICA I DTCSIN ESC
• :A SIA CN E– CA E N SAI ED T I 3X ALIC : N ALLI ESC
+ , 56 )1 ( BF D
• 6A I I I F F 2 D F L• I A I F KA DB K D F L C F KA K
I F B BM F• , K IEBF B F I F F EELFB K NBKA F
KA I I F CBF BI KD I L BF KA II F BFK I I K I
• + F KI BFK– – 2– 1 K KA LE KA DB K D F L 0 KA F 0
• ) BKB F D F KI BFK I IKB D I– 2 0
• + F B I I A NBKA M IK O I A I F• + FF K A BI I F NA F C BI KD NBKA
F– I A BI FF K KA E B KA I B D F L C F KA
• +A C B KAB I A B FF K– )F N B L BF FB F BF– , 5 5 F L A F D L
• K F L A I LDD I BK BF KA I I
• 6A FLE I EL K I L• + F B I B IKBK I A
NBKA I F F D F L• A K N N FK K CF N B B DD
I F I FF K BF KAB I A– K B F K F I I KA D F LK FF K DBC D F LBF KA I A K KA IB AK
• +A CBF FF KBMBK B BEBD I KKA K I IKB D I
• 6AB DLKB F NBDD ILF NBKABF KA KBEBF KA I I FD 2 M IKB F 0
Lang 1
Lang 2
Lang 3
Lang 4
Lang 5
Lang 6
Person 1
Person 2
Person 3
Person 4
2 5 = ?0 ) ( 5 NCL
• C : EC FS• T EC F CS CN NT I ON T• O EC FS ECN D PC F H T SCM NT I S
TT N ON T M# O T S M OH T NT I S S CM LT PL OH
• 6O MCN PC S ECN D E CT F CT MOST/
• 2ONST C NTS– ) : (– ( (– ( (
• 2LCSS H T TT N NT I S MOF LO
• XCMPL .( ,
1modM
9modM
1
11
11
11
21
99
99
99
• 2ONS F T MCX M M MCTE NI
• 0 NON MCX M M MCTE NI,
1modM 9modM
1
11
11
11
21
99
99
99
• 0 MCX M M MCTE NI,
1modM
9modM
1
11
11
11
21
99
99
99
• HOLLO NI I F CLIO T M NFS C MCX M M MCTE NI– < PC CT ON
• T T I O P OH [X MOF LO ] D =# CNF [ X MOF LO ] D• T = CNF F NOT T N MD OH L M NTS N = CNF• H = -‐‑‒ # S CP = CNF
– E I C CNT S =– CLIO T M
• MCTE V L M NT N T C L M NT N =• E CT CS MCN PC S CS POSS DL CMONI =# CS LONI CS CT L CST L M NTS
MC NS N =– E CT CE PC H OM T O CL N MD S
• N# MCTE CLL L M NTS N T T MC N NI L M NTS N =– E CT PC S OS S MS C M LT PL S OH
– S CLIO T M S VCL FCT F CT T NF OH T S SL F S O
• I O PS OH [ MOF ] CNF [ ) MOF ]– 5O NSTCNE # I O PS A( # ) B CNF A # ( B .(– S I O PS C XE PT ONS– 0MONI CE OH T I O PS [ MOF ] CNF [ ) MOF ]#
CN T O L M NTS ECN D PC F• S M LL CL C S D C M LT PL OH
– S# OH L M NTS ) PC S ECN D E CT F HO CEI O P
• = MMC– 2LCSS H T NT I S MOF LO– 5O T I O PS [ MOF ] CNF [ ) MOF ],
• OH L M NTS ) PC S ECN D E CT F– 5O OT I O PS,
• CL T T O I O PS [X MOF ] CNF [ X MOF ] CT C T M• 5 NF C MCX M M MCTE NI S NI T I F CLIO T M
• ?CL FCT ON OH T I F CLIO T M– [MCTE V L M NT N T C L M NT N =]
• H T S PC T S VCL FCT F# T ST S CS– CT M ST P OV S, [T X STS C MCX M M
MCTE NI V L M NT N S MCTE F T CL M NT N =]
• P OOH OH [T X STS C MCX M M N =]– H C L M NT S L HT NMCTE F N SOM MCX M M
MCTE NI,• T T NMCTE F L M NT N D X• = NE = # T X STS C L M NT N = T CT S NOTMCTE F TO C L M NT N L T T S L M NT N = D– H S MCTE F T CNOT L M NT N =# ECNE L T CT MCTE NI
» N T ST PLCE # O V # T MCTE NI S NOT MCX M M H S L HTNMCTE F
• 1 MCTE NI X T # ECN EONST ET C MCX M M MCTE NIX S MCTE F T C L M NT N =
• P OOH OH [T X STS C MCX M M N =]– H T O L M NTS N S PC F N SOM MCX M M MCTE NI,
• T T L M NTS N T PC D X CNF• = NE = # T X STS CT L CST T O L M NTS N = T CTC NOT MCTE F T L M NTS N– H T O L M NTS N = S PC F, ECNE L T CT PC NI# CNF L T T S
L M NTS D CNF V– H NO T O L M NTS N = S PC F, T X STS CT L CST T O
L M NTS L HT NMCTE F# CNF L T T S L M NTS D CNF V» N T ST PLCE # O V # T MCTE NI S NOT MCX M M N S E CECS
• 1 ECNE L NI T PC NI OH X CNF CNF T N MCTE NI X TCNF T V# ECN EONST ET C MCX M M MCTE NI XCNF C MCTE F T L M NTS N =
=6 ? :A4; +)*. EP
• 4 TI VS V FEO SSO IV– : W EPP S I SSO I E FI FEOIH TI VI S H– LI WLI I E I [ SSO IV F IEW EPP S WLI VTI H4 VI S HV [ SSO IV E FI FEOIH TI VI S H E WI E HV
• S E VI S HV HSIV W WEOI WS T ITE I EWPIEVW < SSO IV3
• S VW E WV– * e < e *)*+– ) e 4 e *)*+
• 4HH W S EP S VW E WV S TE W EP V S I– < 4 e *).
• 6 E S E !6– HTC D 2 WLI W I W WEOIV WS T ITE I SSO IV– : W EP ]EW S / HTC)D 2 ) f S WLI SWLI EP IV– E V W S /
• S ! 2*0 1<0 S !N 2 0 N 12 < +0 N 2HTCND 2 E[!HTCND HTC D 4 N( 0
– 4 V I / WLI EP I E S HTC<D WL S L HTC+<D• <SWI WLEW HTC<D V SW I IVVE P E S WLI
– I S TPI[ W / =!< PS <• =!c!<( *e e< 2 =!< PS <
• 6I HI WLI FI S W IV WS IEW SSO IV VW– :WI EW S ) W IV WS E S H -‐‑‒) W IV V I S L
• : WLI STW EP VW EWI SSO IV E I IEWI =!PS < W IV
• ;IW WLI FI S W IV SSO IV E I IEWI FI OE H WLI S VI W I FI S VI S HV SSO IVE I FEOIH FI V* V+ VO * IVTI W IP– LI WSWEP W I WEOI / 4 O !V* V+ VO *– LI FI S SSO IV T ITE IH/ V* V+ d VO *
• I VW H WLI TSVV FPI V S V LI WLIT SH W S V V EW PIEVW <
• LEW E I WLI STW EP EP IV S V 3– LI VLS PH FI EV EV TSVV FPI – LEW V WLI E[ E H EP IV E S V VLS PH H aI FEW SVW *• =WLI VI F V FW E W * S WLI E[ E H EHH * WS WLI
WLI T SH W E FI IEVIH L PI OIIT WLI V PIEH WS ES I Ib I W H VW F W S
• S WS H STW EP V– I S F E VIE L S WLI E[ EP I E S V !PIW W FI– LI VI F WI S I S WLI E[ TSVV FPI FI SS I IV S * E S V
• LI W I S TPI[ W / =!PS , <
• EW L S W S S I S LI PW TP FI V
1
1:23 3 =6 0 *(), O M
1
• =IF F F VF T DFS• 1POS EF TIS P MFOHTI ST T OH PN VF TF )• PW N O TIS F TIF F S DI TI T WIFO
FEHFS F S OOFE MPOH TIF FS MT OH H I SST POHM DPOOFDTFE
• 1POST OTS– * +((– ) +((
• 1POS EF TIF DPOE T PO P ST POH DPOOFDT V T) =IF TI N ST V S T FVF VF TF* F TF ) N ST CF F DI CMF PN TIF VF TF T TIF FOE P
TIF TI• =IFSF TWP DPOE T POS F CPTI OFDFSS OE S ]D FOT
– FDFSS T S PCV P S– =IF SLFTDI P TIF PP P S ]D FOD
• PN DPOE T PO ) FVF VF TF S F DI CMF PN VF TF )• PN ) TIF VF TF T TIF FOE P TIF TI S F DI CMF PN FVFVF TF OE PN * VF TF ) S F DI CMF PN FVF VF TF
• =I S FVF VF TF S F DI CMF PN FVF PTIF VF TF V )MF E OH TP ST POH DPOOFDT V T
• ?F W MM M 2 O N D PH N OH !2• ?I T SIP ME CF TIF ST TF O 2
– E MFOHTI P TIF TIA O NCF P TIF SFE VF T DFSA ST TFPO TIF ST POH DPOOFDT V T A• 6N H OF TIF T OS T PO S FOE OH POF VF TF T TIF FOE PTIF TI T T NF
– =I S NP OT P O P N T PO SIP ME CF FOP HI– =IF PCMFN S WI T TI S [ST TF PO TIF ST POH DPOOFDT V T
DT MM S
• :CSF V T PO PO [ST TF PO TIF ST POH DPOOFDT V T– ?IFO VF TF S FOEFE T TIF FOE P TIF TI-‐‑‒
• 6 FOEFE TP VF TF ) T W MM CFDPNF ST POHM DPOOFDTFE• 6 FOEFE TP VF TF PN WI DI VF TF ) S F DI CMF TW MM CFDPNF ST POHM DPOOFDTFE S WFMM– N M M TP TIF FV P S PP PO ST POH DPOOFDT V T T D O CF
PVFE TI T VF TF PN WI DI VF TF ) S F DI CMF CFMPOHS TPTIF ST POHM DPOOFDTFE DPN POFOT DPOT O OH VF TF )
• 6 FOEFE TP O PTIF VF TF– 0DT MM TIF ST POH DPOOFDT V T W MM OPT EFVFMP T MM
– WI DI NF OS WF POM I VF TP N OT O1
• =IF DPN MFTF 2– E A A LA . !TIF O NCF P TIS P MFOHTI DPOS ST OH P VF T DFS S DITI T TIF S F P TIF ST POHM DPOOFDTFE DPN POFOT DPOT O OH VF TF ) S L
– 6O T M T PO-‐‑‒ E (A )A )A . )– = OS T PO-‐‑‒
• E )A )A LA . E A A LA !– 0 FOE VF TF OPT DPOT OFE O TIF TI T TIF FOE P TIF TI
• E )A A LA . E A A LA ! L– 0 FOE VF TF OPT DPOT OFE O TIF ST POHM DPOOFDTFE DPN POFOT DPOT O OHVF TF ) T TIF FOE P TIF TI
• E )A A A . E A A LA L– 0 FOE VF TF DPOT OFE O TIF ST POHM DPOOFDTFE DPN POFOT DPOT O OH VF TF )T TIF FOE P TIF TI
– 0OSWF -‐‑‒ E A A A– = NF DPN MF T -‐‑‒ :! *
2=3 A B0: ) (+ OSGQ
• ANKWK GWK [KW OIKX• V KWOKX OQQ HK WTIKXXK
– ANK O N V KW -‐‑‒ MO[KS 0O 1O 2O-‐‑‒• ITSSKI [KW K] 0O GS 1O O N GS K MK TL ITX 2O• ITSSKI [KW K] 1O GS 0O ( O N GS K MK TL ITX 2O (• ITSSKI [KW K] 0O ( GS 1O ( O N GS K MK TL ITX 2O )• ITSSKI [KW K] 1O ( GS 0O ) O N GS K MK TL ITX 2O•
• 0L KW GQQ NK V KWOKX GWK WTIKXXK aSNK KOMN TL NK ROSOR R X GSSOSM WKK! A TL NK MWG N
• 2TSX WGOS X– ) d d )– ( d d )– ( d 2O d ( ,
• ATT RGS K MKX T OWKI Q aS NK A• CK OQQ K]GROSK NK V KW
– :K X G Q 9W X GQ X GQMTWO NR T aS NK A• =S NK MWG N HKQT NK K MKX GWK G KS OS T GIIT S LWTRQKL T WOMN
A A+1 A+2 A+3
B+2 B+3 B+1 B
・・・ C
C+1
C+2
C+3
C+4
C+5
C+6
• CK OQQ K]GROSK NK V KW– :K X G Q 9W X GQ X GQMTWO NR T aS NK A– 0I GQQ K IGS WKQTIG K GS K MK GX HKQT O NTGcKI OSM NK KOMN TL A • CNKS NK K MK O N ITX 2 ( OX G KS OS T GIIT S NK K MK
O N ITX 2 R X GQWKG HK G KS OS T GIIT S GS [KW OIKX 0GS 1 R X GQWKG HK ITSSKI K
A A+1 A+2 A+3
B+2 B+3 B+1 B
・・・ C
C+1
C+2
C+3
C+4
C+5
C+6
• CK OQQ K]GROSK NK V KW– ?KQTIG OSM K MKX OS NK XGRK G
A A+1 A+2 A+3
B+2 B+3 B+1 B
・・・ C
C+1
C+2
C+3
C+4
C+5
C+6
• CK OQQ K]GROSK NK V KW– ?KQTIG OSM K MKX OS NK XGRK G
A A+1 A+2 A+3
B+2 B+3 B+1 B
・・・ C
C+1
C+2
C+3
C+4
C+5
C+6
• CK OQQ K]GROSK NK V KW– ?KQTIG OSM K MKX OS NK XGRK G
A A+1 A+2 A+3
B+2 B+3 B+1 B
・・・ C
C+1
C+2
C+3
C+4
C+5
C+6
• CK OQQ K]GROSK NK V KW– ?KQTIG OSM K MKX OS NK XGRK G
A A+1 A+2 A+3
B+2 B+3 B+1 B
・・・ C
C+1
C+2
C+3
C+4
C+5
C+6
• CK OQQ K]GROSK NK V KW– ?KQTIG OSM K MKX OS NK XGRK G
A A+1 A+2 A+3
B+2 B+3 B+1 B
・・・ C
C+1
C+2
C+3
C+4
C+5
C+6
• 0L KW WKQTIG OTS NK K MKX IGS HK IQGXXOaK OS T-‐‑‒– 0S K MK TL ITX 2 ITSSKI OSM [KW OIKX 0 GS 1– MKX TL ITX 2 ( )O ITSSKI OSM [KW OIKX 0 O GS 0 ( O– MKX TL ITX 2 ) )O ITSSKI OSM [KW OIKX 1 O GS 1 ( O
A A+1 A+2 A+3
B+2 B+3 B+1 B
・・・ C
C+1
C+2
C+3
C+4
C+5
C+6
• 0L KW WKQTIG OTS NK K MKX IGS HK IQGXXOaK OS T-‐‑‒– 0S K MK TL ITX 2 ITSSKI OSM [KW OIKX 0 GS 1– MKX TL ITX 2 ( )O ITSSKI OSM [KW OIKX 0 O GS 0 ( O– MKX TL ITX 2 ) )O ITSSKI OSM [KW OIKX 1 O GS 1 ( O
• ANKXK KX TL K MKX GWK ITQTWK OcKWKS Q LTWOQQ X WG O[K W TXKX
A A+1 A+2 A+3
B+2 B+3 B+1 B
・・・ C
C+1
C+2
C+3
C+4
C+5
C+6
• 0L KW GQQ NK V KWOKX GWK WTIKXXK GS NK K MKXGWK WKQTIG K NK MWG N QTT X GX HKQT -‐‑‒– ANKWK GWK OSaSO KQ RGS MWKKS K MKX NKWK XNT S OSMWKKS
0
1
2
3 5
4
7
6
• 0RTSM NK MWKKS K MKX NKWK XNT S OS MWKKS KIGS WKRT[K GQQ H NK TSK O N NK ROSOR RKOMN O NT GcKI OSM NK KOMN TL NK A
• T NKWK GWK TSQ K MKX GS K IGS XOR QaS NK A
0
1
2
3 5
4
7
6
• T T aS NK MWKKS K MK O N NK ROSOR R KOMN NKWKXNT S OS MWKKS– 6WKKS K MKX-‐‑‒ K MKX O N ITX D )O ITSSKI OSM [KW OIKX O GS ( O– TW XOR QOIO QK X GXX RK NG MWKKS K MKX GWK X GSSK GX LTQQT X-‐‑‒
• OWX ITSSKI [KW OIKX GS ( O N GS K MK TL ITX D• WTR NKWK WTIKK IQTI OXK X GSSOSM K MKX NOQK OSIWKGXOSM NK ITX TLGS K MK H ) GL KW KGIN X GSSOSM
– ANK GQMTWO NR• = -‐‑‒ IEOF . NK ROSOR R ITX TL GS K MK ITSSKI OSM [KW OIKX O GS O (( SO OGQO K KGIN IEOF T e) TW KGIN GOW ! D KWLTWR GS G K-‐‑‒ IE F . ROS!IE F D TW KGIN O LWTR NWT MN ( KWLTWR GS G K-‐‑‒ IEO (F . ROS!IEO (FIEOF ) ]KI K NOX QTT OIK– CK GWK K]KI OSM NK QTT OIK T WKbKI NK ITSSKI OTS HK KKS ( GS
• ANK ORK ITR QK]O– OS OSM NK MWKKS K MK O N NK ROSOR R KOMN NKWKXNT S OS MWKKS-‐‑‒ =! OS T GQ
– OS OSM A GL KW GW X-‐‑‒ =!! QTM !
(
5 6 A ;C4= ) (-‐‑‒ P HS
• V WL V H L WSH P N H NHTL V > X H L H H NLK P H VVT SL [ [V PNO[ OL L LH O X H L P H PN LK H P [LNL V L– H O WSH L WSH L OP WPL L V [V X H L ( H K ) L WL [P]LS– ; LH O [ [OL WSH L P[O OP WPL L [V [OL SL [ V [OL VWWV L [b TV]L OP
WPL L OL KL [P H[PV T [ IL [V [OL PNO[ V [OL L [ WV P[PV H K T [ V[VP PKL P[O [OL WV P[PV V [OL VWWV L [b WPL L
– DOL [OL WPL L H V[ IL TV]LK H TV L [OL NHTL L K– H O WSH L b V L P [OL T V [OL V L V [OL X H L OL L [OL WSH L OH
WSH LK OP WPL L– H O WSH L PSS WSH [V TH PTPaL ![OL WSH L b V L ![OL VWWV L [b V L
• OL V L V [OL PNO[TV [ X H L P V[ L[ KL[L TP LK 9P]LL]L HS H KPKH[L V [OH[ V L f K [OL L WL [LK V [ VTL V [OLNHTL V LH O H KPKH[L
• 5V [ HP [– j > j )– j ! OL [V[HS V L H PN LK [V V PNO[TV [ X H L j ( -‐‑‒
– ( j ! OL TIL V H KPKH[L V [OL V L V [OL PNO[TV [ X H L j)
– j ! H O H KPKH[L V [OL V L V [OL PNO[TV [ X H L j ( .
)
• 5V PKL [OL [ H[LN V TV]P N [OL WPL L• ; [OL L [ X H L [V [OL L [ WV P[PV P ]H H [
[OL VW[PTHS OVP L P [V TV]L [OL L– AP L [OL V L V H X H L P V LNH[P]L V SV L
V[OP N H K [OL L [ [ PSS HS V IL V• OP O TLH [OL V [ VTL V [OL NHTL PSS IL [OL HTL H [LTVKP P N [OL SL V TV]P N [OL WPL L H VSSV– e4 [L TV]P N OP WPL L [OL WSH L T [ LWLH[LKS TV]L[OL VWWV L [b WPL L V L X H L [PS P[ P L [ [V [OLWSH L b WPL Lh
– 4 [L LH O [ [OL WPL L H L HS H HK H L [
+ +1
• 4KKP[PV HS V [ HP [ V WH [PHS V L– [OL L P V S V L H KPKH[L V [OL V L V [OL PNO[TV [ X H L
• 6 HTP VN HTTP N !6– A[H[L
• KWFPG 2 A[H [P N VT [OL P[ H[PV OL L [OL WSH L b H K VWWV L [bWPL L H L V [OL !P ( [O H K P [O X H L L WL [P]LS [OL TH PT T]HS L V h![OL WSH L b V L ![OL VWWV L [b V L h– :L L 4FP (G H K 4FPG H L L S KLK VT LH O WSH L b V L– ; P[PHSPaL P[O KWF>G 2 H K [OL H L PSS IL KWF)G 4F(G 4F)G
– H P[PV• KWFPG 2 TH !4F G T!4FP (Gd4F (G KWF G c P1 j>
– :L L 4FPG KL V[L [OL V L V [OL P [O X H L
• OL [PTL VTWSL P[ P [PSS [VV T O V [OL [PTL SPTP[
+ +1
• TH !4F G T!4FP (Gd4F (G KWF G c P1 j>– OP LLK [V IL HS SH[LK H [L
• I L ]L [OL V T SH V KWFP (G– TH !4F G T!4FP (Gd4F (G KWF G c P 1 j>
• OP P V PKL HIS PTPSH [V [OL V T SH V KWFPG• =L[ L L [OL L S[ V [OL HS SH[PV
– TH !4F G T!4FP (Gd4F (G KWF G c P1 j>2 A TH !4F G -‐‑‒ T!4FP ( (Gd4F (G KWF G c P (1 j>
-‐‑‒ -‐‑‒– OH[ P– KWFPG 2 TH !KWFP (G 4FP (G 4FP (G KWFP (G
• OL [PTL VTWSL P[ P V !> OP O P L V NO
+
• HTP P N [OL L L L LSH[PV V KW– KWFPG 2 TH !KWFP (G 4FP (G 4FP (G KWFP (G
2 cKWFP (G 4FP (Gc– OP P H ]L PTWSL V T SH [ I[ H [P N 4FP (G VT KWFP (G
H K [H P N [OL HI VS [L ]HS L– OL VSSV P N NHTL PSS OLSW P [ P[P]L KL [H KP N
• ; P[PHSS H WPL L P WSH LK V [OL L V K X H L H K [OL [ V WSH L bV L H L 4F(G H K 4F)G L WL [P]LS
• OL eP P[PH[P]Lh P OVSK I LP[OL WSH L– ;[ V L WV K [V [OL WSH L OV L WPL L P [V [OL SL [ V [OL VWWV L [b P [OL
V PNP HS NHTL• ; LH O [ [OL WSH L OVSKP N [OL P P[PH[P]L OVV L e LLWh V e OH NLh
– <LLW TV]L [OL WPL L V L X H L OL VWWV L [ NHP [OL V L V [OLH P]P N X H L
– 5OH NL TV]L [OL WPL L V L X H L OL WSH L NHP [OL V L V [OL H P]P NX H L [OL NP]L [OL P P[PH[P]L [V [OL VWWV L [
+
• 6 H H H L V SV NL LLKLK V [OL HS SH[PV– 2 4F>G0
V !P2> (0 P 32 0 P 2 HI ! 4FPG 0H 2 4F(G 4F)G0
– DL PSS L L [V [OP W V LK L H e4SNV P[OT Eh– DL LLK [V Li PL [S f K [OL ]HS L V H OL [OL]HS L V 4F>G P OH NLK
– OL WH [ e 4F(G 4F)Gh P V SV NL L L [PHS H K PSS ILPN V LK VT V V
+
• DOL 4F>G P L [ LTLS SH NL– DOL 4F>G OH H SH NL ]HS L O H ( . HI ! 4FPG PSSHS H LX HS 4FPG
– ; OP O H L [OL H L PSS IL 4F>Gg T!4F Gd4F> (G• AWL Pf HSS [OP OHWWL OL T!4F Gd4F> (G j 4F>G
– DOH[ LTHP P [OL H L OL L 4F>G j T!4F Gd4F> (G• >V[L [OH[ T!4F Gd4F> (G j ( -‐‑‒ OVSK VT [OL V [ HP [
+
• DOL 4F>G P THSS– 5V PKL [OL VSSV P N 6 [HISL
• KWF GF G 2 [OL L]L [ HS ]HS L V P 4SNV P[OT E H TP N[OL ]HS L V H OL [OL P[L H[PV V P2 P KV L
• ; P[PHSPaLK P[O KWF GF G 2 OL H L PSS IL KWF>GF4F>GG• KWF (GF G 2 KWF GFHI ! 4F G G
– HTWSL >2-‐‑‒ 4F G2, 4F+G2 4F,G2+
k 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
dp[3][k] 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
dp[4][k] 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10
dp[5][k] 2 3 4 5 4 3 2 1 0 1 2 3 4 5 6 7
dp[6][k] 4 5 4 3 2 3 4 5 4 3 2 1 0 1 2 3
+
• 5HS SH[L KWF>G Li PL [S– I L ]L [OL W VWL [PL V [OL 6 [HISL– KWF (G H IL VI[HP LK I f [ OP [P N KWF G I 4F G H K[OL HWWL KP N KWF GF(GdKWF GF4F GG P L]L L V KL H[[OL ILNP P N V P[
k 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
dp[3][k] 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
dp[4][k] 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10
dp[5][k] 2 3 4 5 4 3 2 1 0 1 2 3 4 5 6 7
dp[6][k] 4 5 4 3 2 3 4 5 4 3 2 1 0 1 2 3
+
• 5HS SH[L KWF>G Li PL [S– I L ]L [OL W VWL [PL V [OL 6 [HISL– KWF (G H IL VI[HP LK I f [ OP [P N KWF G I 4F G H K[OL HWWL KP N KWF GF(GdKWF GF4F GG P L]L L V KL H[[OL ILNP P N V P[
k 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
dp[3][k] 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
dp[4][k] 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10
dp[5][k] 2 3 4 5 4 3 2 1 0 1 2 3 4 5 6 7
dp[6][k] 4 5 4 3 2 3 4 5 4 3 2 1 0 1 2 3
+
• 5HS SH[L KWF>G Li PL [S– I L ]L [OL W VWL [PL V [OL 6 [HISL– KWF (G H IL VI[HP LK I f [ OP [P N KWF G I 4F G H K[OL HWWL KP N KWF GF(GdKWF GF4F GG P L]L L V KL H[[OL ILNP P N V P[
k 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
dp[3][k] 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
dp[4][k] 5 4 3 2 1 0 1 2 3 4 5 6 7 8 9 10
dp[5][k] 2 3 4 5 4 3 2 1 0 1 2 3 4 5 6 7
dp[6][k] 4 5 4 3 2 3 4 5 4 3 2 1 0 1 2 3
+
• 5HS SH[L KWF>G Li PL [S– I L ]L [OL W VWL [PL V [OL 6 [HISL– KWF (G H IL VI[HP LK I f [ OP [P N KWF G I 4F G H K [OLHWWL KP N KWF GF(GdKWF GF4F GG P L]L L V KL H[ [OLILNP P N V P[
– OH[ P KWF>G H IL VI[HP LK I LWLH[LKS W OP NKWF GF(GdKWF GF4F GG P L]L L V KL H[ [OL ILNP P N V KWF G• DL PSS L KLX L [V W O LSLTL [ H[ [OL ILNP P N V [OL
LX L L– ;[ [H L !4F G [PTL [V VI[HP KWF (G VT KWF G [O P[[H L ! T!4F Gd4F> (G [PTL P [V[HS [V VI[HP KWF>G• VT [OL V [ HP [ T!4F Gd4F> (G j ( -‐‑‒ OP O PSS i L
67 7AB:C ,*+-‐‑‒ M EO
• BLI I MV E 9 D MH R WEM M E LE E WI M IE LVT E I
• 9R PE SOE IPI W R LE E WI V E FI RFWEM IHF I I VM R V E H RO P V M E R HI EPFI R WMPIV2
• V I PRH OR +*/ .
• R VW EM WV– + c 9 D c ,**
• DLI WLI PFI R R V MV RHH0• BLI PMHHOI R MV RW E I WIH F RO P I I VI• :W MV R O E I WIH F R I I VI
– : R I I VI E E W EOO EOWI WLI PMHHOI R 0 WLI E V I MV WLIPFI R SOE IPI W R RWLI R V# ,
– WLI MVI0 WLI E V I MV WLI PFI R SOE IPI W R RWLI R V#
• BLI VEPI RIV R RHH PFI R RO P V• =R I R O LE I WR R VMHI LI
• 6M MHI WLI R V E H RO P V M LEO E H R VMHIVT E IV EVVM IH WLI VEPI PFI M WLI IFIOR EV E
• R I I VI E H RO P I I VI MOO RW W E V I ELE E WI WR E VT E I FIOR M WR E HM I I W R SRP WLI I W R I
• IW V WLM N R E VIT I I WLEW MOO LE I WLISOE IPI W R LE E WI V MWLM VRPI R S MWLR WE I WM WLI RWLI R SV– R M VWE I0
• I I VI WLI VW R• I I VI WLI VI R H RO P• I I VI WLI VW R E EM• I I VI WLI VI R H RO P E EM
– : WLMV E I E SI R P E M OE VLM W R WL IILE E WI V
• IW V WLM N R E VIT I I WLEW MOO LE I WLISOE IPI W R LE E WI V MWLM VRPI R S MWLR WE I WM WLI RWLI R SV– DLEW E FI HR I RP M OE VLM WV R WL II LE E WI V2– DI E RFWEM EOO WLI
• I I SI P WEWMR MV E SI P WEWMR RFWEM IH F I IPFI R V ESV
• RHH SI P WEWMR MV VMPMOE O HI IH• :W MV N R WLEW ! R I I SI P WEWMR V# 1 ! R RHHSI P WEWMR V# 1 ! R EOO SI P WEWMR V# ) ,
– R I VIO MW E EOVR FI S R I WLEW R O I I SI P WEWMR VE FI RFWEM IH OIVV MW MV EOOR IH WR E I W RWLI R SV
• 9R WR RFWEM RHH SI P WEWMR V2– ?I R P I E WO R I R R I I VI E H RO P I I VI– : WLEW EVI LR I I WLI R SV M WLI I I VIH R )
RO P MOO EOVR S RH I R O RHH SI P WEWMR V
• OEVVM R SV E R HM WR HMVW MF WMR R LE E WI V– : EOO R LE E WI V E I HMVWM W EV M EF H 0
• O I I SI P WEWMR V MOO FI S RH IHa-‐‑‒ ), 1 +,SI P WEWMR Vb
– : WLI I E I H SOM EWI LE E WI V EV M EEF 0• OO SI P WEWMR V E FI RFWEM IH WLI PFI R SI P WEWMRHISI HV R WLI HMVW MF WMR #– AM I MW MV SRVVMFOI WR EVWI E V ES R W R MHI WM EO LE E WI V WLII I SI P WEWMR V E H WLI RHH SI P WEWMR V S RH I WLI VEPI VIWR SRVVMFOI SOE IPI W R LE E WI V
• 6ISI HM R WLI HMVW MF WMR R LE E WI V VRPIR SV E I E I WIH F WLI SE MW R SI P WEWMR VLMOI WLI RWLI V E I RW(
• R R SV E I WIH F WLI SE MW R SI P WEWMR V LRPE SEWWI V R SE MW R IE L R WLRVI R SV E IRFWEM EFOI2
• 7 EPSOIV R EOMH E H M EOMH SEWWI V– BLI IV VLR WLI SSI OI W SE W R WLI MH
• RVV IS IVI WV E R S RW E I WIH F WLI SE MW• * IS IVI WV E R S WR FI I I• + IS IVI WV E R S WR FI RHH
– DLEW I E I HM R MV WLI PFI R WLI FM E SEWWI V– BLI R I WR WLI OI W MV RFWEM EFOI F I I VM WLI R V) RO P VM HM EWIH F E R V
– BLI R I WR WLI M LW MVRFWEM EFOI
• R VMHI E FMSE WMWI ESL MWL E I WI R IE L R E HIE L RO P
• R IE L VT E I WLEW MV RW E RVV M WLI S I MR VI# R I W WLI R IVSR HM R I WI E H RO P
I WI F E IH I• R IE L I WI LRRVI * R +
– :W R IVSR HV WR LIWLI WLI R ) RO P MV I I VIH• R IE L IH I H WLI V P R WLI PFI V R WLI I WM IVMW R I WV PRH OR ,– * R IVSR HV WR I I SI P WEWMR V E H + R IVSR HV WR RHHSI P WEWMR V
• DI E W WR H WLI PFI R FM E SEWWI V R WLI IH IV
• 9R WR H WLI PFI R FM E SEWWI V2• 6IEO MWL IE L R I WIH RPSR I W VISE EWIO
– R VMHI E VSE M W II B R WLI R I WIH RPSR I W– : WLI FM E SEWWI R WLI IH IV R B MV HIWI PM IH WLI SEWWIR WLI IPEM M IH IV MOO FI MT IO HIWI PM IH• # # 1 , d PRH ,#
– FM E SEWWI R WLI IH IV R B MV RFWEM EFOI• DLI E EO I R R I I WI MV HIWI PM IH WLI EO IV R WLI RWLI
I WM IV MOO FI MT IO HIWI PM IH– BL V WLI PFI R RFWEM EFOI SEWWI V MWLM E R I WIH
RPSR I W MWL A I WM IV MV , A +#
• BLI PFI R RFWEM EFOI SEWWI V R WLI LROI ESL MV, ! R I WM IV# ! R R I WIH RPSR I WV##
• A PPE– : 9 E H)R D E I RHH S R IVV WLI PMHHOI R ) RO P– OWMSO WLI PFI R WLI RFWEM EFOI SOE IPI WV R
LE E WI V MWLM IE L R S– R VW W E FMSE WMWI ESL WLI P OWMSO, 9 D ! R R I WIH RPSR I WV## WR WLI S RH W RPS WIH EFR I
• BLI WMPI RPSOI MW MV 9 D# LM L MV PR I WLEI R L
7A8 : DE=G ,*+/ : UIS
• HM PI M IU O L• : VT MI P VN PM . V RM I V UL PM O L M
W P I d ML U T M VN WIUMS U V PM O L• =U PI V LM PV SL WIUMS M W PML U V PM
O L V dSS ISS PM I M 4
• 7VU I U– + -‐‑‒**– . M VUL WM I M#
• EPM VWM I VU VN W P UO I SM N VT I V RM– =U PM dO M I SM P I U T M MW M MU PM SM
U M ML PM P VWM I VU
• EVV VTWS I ML
• =U MIL VN W P UO I SM N VT I V RM (((• HM IU TWS
• V SVVR TIUIOMI SM
• EV MI P I M M ISSV I M I L M VU N VT P PI SM VTM– =UL I ML IU I V U PM dO M
• HM T V MI P I M V PINV MI P V IUL MI P VS TU PM U T M VNI V U MI P L M VU VU MU P PM UW– =N M IUUV ISSV I M I V PM IU M c=TWV SMf– =N M IU IS I WV SM4
• =N M IU ISSV I M I V IS I WV SM4• M V M V M PM M MU M VN VWM I VU
– CMWMI MLS dSS PM c MIL f I M• I I M MIL PMU ISS SV M I M I M V W ML
– 7VU LM PM MSI VU P W c I M T M dSSML MNV MI M 6f I I
– =N PI O IWP I 8 M IU dSS ISS PM I M U M M MVWVSVO IS V LM
• BV SM U P I M2
• =N M IU ISSV I M I V IS I WV SM4– =N PM M I M SM U PM MSI VUIS O IWP V
• ITWSM VN LMILSV R 2
• =N M IU ISSV I M I V IS I WV SM4– 8MILSV R TI V
• ISS M IU IS I– DP N PM I V ISVUO PM SM VUM I M– EPM LMILSV R I M MS T UI ML P SM RMMW UO PM VU I U
VU PM U T M VN I V
• =N M IU ISSV I M I V IS I WV SM4– – HM IU IS I MS T UI M LMILSV R
• V M M PMU LMILSV R I M MS T UI ML UMLMILSV R TI V– EPM SS L IWWMI IN M I dU M U T M VN MS T UI VU
• EP M I MLM MI M IN M MI P MS T UI VU
• LL VUIS VU I U NV PM WI IS V M– .*
• : UL PM ISSV I VU VN I V PM M PM T VN c PML IU M N VT MI P I V V PM V M WVUL UOV RM f WV SM– EPM M UV LMILSV R U P ISSV I VU
• =N PM M I M LMILSV R PM V IS L IU M UV T U T aML
• D P ISSV I VU NV UL (((– !
• 7VU UO PM O IWP– DV M i DV RM 7IWI 2 ! VN SM V U M 7V 2 *#– DV RM i D I M U PM V ) VS TU 7IWI 2 + 7V 2 PM L IU M#– D I M i D UR 7IWI 2 + 7V 2 *#
• CM V M PM ISSV I VU N VT PM M L IS O IWP PMU WM NV TVWVSVO IS V
• EPM TM VTWSM– ! VN M M bGb 3 . , +0/,– ! VN MLOM b b 3 . . # , +/-‐‑‒,*– EPM IS M VN eV R 3 +/**– A Rb b SVO bGb# PM M Rb b SVO bGb -‐‑‒ +*1
• 7SV M PM M VVT NV SV M TWSMTMU I VU V WI
!
• EPM M IU A -‐‑‒# VS VU
• =U TTI M d ISSV I M I V V PMI M PMU VU PM W V ML M VN U M VU
P SM MS T UI UO LMILSV R– SSV I UO I V 2 A , SVO #– 7VU UO PM W V ML MhA -‐‑‒#
!
• SSV I UO I V– =U MIL VN L M S ISSV I UO PM NV L M VU M d ISSV I M
cGf M IS# V c f PV aVU IS#• EPMU ISSV I M FW)8V U V G IUL MN )C OP V
• SSV I UO G)– 7VU LM PM WI M O IWP PM M PM M I M M NV MI P V IUL
MI P VS TU IUL PM M I MLOM NV MI P I M VUUM UO PMV M WVUL UO V IUL VS TU
– 7PVV M I M VN MLOM V PI PM LMO MM VN MI P M M M IS V PMWM dML IS M
– DVS ML IUU UO PM c V f M M N VT VW V V VT O MML SVUUM UO PMT V PM c VS TUf M M U LM MI UO V LM VNMTI U UO IWI
– S PV OP SV M ?I T T :SV SS IS V U U TM
• CM V UO PM W V ML M– D T SI V 8:D– V M M PMU I LMILSV R SM# LM M ML L UO 8:D
MS T UI M VU PM WV IUL M TM 8:D– 7 M M W M LV VLM VU PM UM S LM
• EPM TM VTWSM– EPM TM VTWSM VN MS T UI UO LMILSV R VU VW VN 8:D– A ,# NV 8:D MSN– S T UI UO I LMILSV R IRM A ! VN I M U PM LMILSV R#– g ! VN I M U PM LMILSV R# ! VN ISS PM I M #
• I P TM I LMILSV R MS T UI ML MI P I M IL IU M I SMI VUMI M
– EP A -‐‑‒# U V IS NV MS T UI UO LMILSV R
dir[N][N]'//'direction'allocated'to'the'square used[N][N]'//'whether'the'square'is'filled'(false'initially)'state[N][N]'//'whether'the'square'is'in'the'stack'of'DFS (false'initially)'bool'dfs(i,j)'{'//'i:'row,'j:'column,'returns'whether'a'deadlock'is'detected ''if'(used[i][j])'return'false;'''if'(state[i][j])'{'''''state[i][j]'='false;'''''return'true;'''}'''state[i][j]'='true;'''cur_dir'='dir[i][j];'''for'((i',j')':'squares'to'the'cur_dir'of'(i,j))'{''' 'if'(!dfs(i',j'))'{'
'''dir[i'][j']'='cur_dir;''''if'(state[i][j])'{''''''state[i][j]'='false;''''''return'true;''''}'else'{''''''return'dfs(i,j);''''}''}'
''}'''state[i][j]'='false;'''used[i][j]'='true;'''output(i,j);'//'reports'that'the'direction'of'(i,j)'is'dir[i][j] ''return'false;'}'