code%festival%2016%final › contests › cf16-final › data › other › ... · • =wli8=0vi f?...

185
CODE FESTIVAL 2016 Final AtCoder (English editorial is at the bo?om.)

Upload: others

Post on 27-Jun-2020

11 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

CODE%FESTIVAL%2016%Final

AtCoder %%

(English%editorial%is%at%the%bo?om.)

Page 2: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

 

  S

Page 3: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  L0 IA CA 6 216HC VH O

•  W C F D E•  C T D E

Page 4: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

 

0 12 32 4 6 +

Page 5: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  K 7 KD XF•  7•  V•  T DX S

• –  E 7 E ,

Page 6: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  <–  < Y L < X7

–  Y C < K

Page 7: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  < X 7–  < K 7 –

•  = K 7 – =–   = -‐‑‒ 7 E =

•  O L = 7 K = Y–  E = 7 -‐‑‒ =

•  X = ADX N 5•  I 7

–  =   ( ) ( )•  K Y

Page 8: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

• –  K 7 K I

•  ~∼ L

• –  O O K

Page 9: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

 

6 0 1 +

Page 10: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  5 K•  n n V N n•  o B UC

A o M O V

• –  5 )

–  )

–  V o 2 S 2 )

Page 11: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

• –  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

Page 12: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  o S L•  o N•  MS

Ln L–  M L

S L•  d T•  5 2

M

D

E

F

I

D

E

F

Page 13: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

 

0 12 2 /5 (

Page 14: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  X w•  < X x Sw•  N x X Op N X 6 O

w T w•  w X w

• –  ( )

–  6 )

–  < )

Page 15: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  x 6 v | w

•  I6-‐‑‒

v1 v9

1

11

11

11

21

99

99

99

Page 16: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  w

•  x S

v1 v9

1

11

11

11

21

99

99

99

Page 17: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  xX

v1 v9

1

11

11

11

21

99

99

99

Page 18: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 19: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  6 vX p 6 (–  6-‐‑‒ ( s ) )–  x S S–  vX Lp 6 (M | | ix ix a S•  X 6 w

–  ST   | ( X xw

Page 20: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  p–  6 v | w–  | yaw 6 w |I

•    | (–  T S I

•  v D | v 6 D | p w•  w

Page 21: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

• –  N aw wO

•  X x–  N aw T

X wO x S

Page 22: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 23: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 24: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

 

<6 4 +)*.

Page 25: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  s–  j T [ [ g–  P dTn | 4 fsk s g

x ~∼T * P g d x•  ; k x

• –  * ; *)*+–  ) 4 *)*+

Page 26: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

• –  ; 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 ;

Page 27: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  k–  ) | -‐‑‒) | m

•  < ILE ;

•  p T pn o O* O+ O * k

–  4 O* O+ O *–  O* O+ O *

Page 28: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 29: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  < ILE, ;

•  f x

Page 30: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

 

=6 ? :A4; +)*. EP

Page 31: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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 *)*+

Page 32: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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 <

Page 33: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

 

•  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 *

Page 34: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

 

•  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

Page 35: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

 

•  LI W I S TPI[ W / =!PS , <

•  EW L S W S S I S LI PW TP FI V

Page 36: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

0 12 32 ) (+

Page 37: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

F

•  j O•  ( O [ 6 j•  i d i

k TF

• –  ) N N *–  ( N 6 N *

Page 38: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 39: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  1 I•  1 j k PTF

–  C= j [ = j = i ]•  dkD j M dP

–  PO–  i ] Li PjT

Page 40: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 41: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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 )

Page 42: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

 

4 56 76 29 ) (-‐‑‒

Page 43: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  [•  = [ 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 (

Page 44: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  [ ]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

Page 45: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 46: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 47: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 48: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 49: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 50: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 51: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 52: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 53: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  li Lo [

–  [ nV

0

(

2

3,

+

.

-‐‑‒

Page 54: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  L [n V

•  oL [ = lii Lo V

0

(

2

3,

+

.

-‐‑‒

Page 55: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

• –  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

Page 56: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

• –  N =–  N = E =

Page 57: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

-‐‑‒ +

4;56 6=> 39 ( ,

Page 58: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  ~∼ ~∼ 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 [ ~∼

• –  ) (–  ~∼ ~∼ ~∼ ,

–  ~∼ ~∼ ~∼ ~∼ (–  ~∼ ~∼ ~∼ -‐‑‒

Page 59: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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 |

Page 60: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

• –  ~∼ ~∼ ~∼ 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

Page 61: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 62: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 63: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  – 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

Page 64: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 65: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 66: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 67: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 68: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 69: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 70: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

 

67 7= *()-‐‑‒

Page 71: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  9 a s•  d s

d•  EFD )(/ ʻ‘

• –  ) 9 *((

Page 72: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  a•  ” s w•  w

– –  w

•  a•  d c d w

Page 73: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  sw s

•  O s “a “ d

w

Page 74: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  “ “w s

– •  )•  *•  )•  *

–  d a

Page 75: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  “ “w s

–  d a a–  d a

•  HIA d b•  HIA d•  *

–  “ w d aw d b

Page 76: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

• –  p oc–  o Sʼ’ T “

w

Page 77: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  “ c–  LABCD s a w

•  S-‐‑‒   * 1 )* T–  LAABC a

•  s a S w T–  A HIA s a ʻ‘

a

•  a “w “ a

Page 78: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  a “ s aa w

b w•  w w

–  ) , oc s•  a w “•  V “•  W “

–  pw ʻ‘ d V W–  O d– 

Page 79: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  m “•  w•  s V W ʻ‘

–  s•  s ʻ‘

–  aV aW s•  V W a ʻ‘

Page 80: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  V W a• 

– –  V W a ʼ’

ʼ’•  ! 4 !4 1 *4 !EFD *

–  V W•  W V W ʻ‘ V Wa ʼ’

–  s = s *!= )

•  “ *!

Page 81: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  ʼ’ ʻ‘–  9 a w ” s–  “ c–  “ *!9 c

•  !9 a

Page 82: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

2 34 4 7=18 ( +

Page 83: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

• •  ru nk

e•  g e i

• –  )–  *

Page 84: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  e S–  A r k A e l

e

•  g

Page 85: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  e S•  ir

•  e e nk

Page 86: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

N

•  u n S |–  e

•  u g|u n u e g–  r– 

Page 87: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

N

• •  g cr

–  cr•  cr T | g g u n

–  c |c u Sr

–  316u n u

•  c O

Page 88: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

N

• –  u r

•  c O N

Page 89: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

N

• –  cr

•  l–  u uVo o–  kek k

Page 90: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

N

• –  J– 

•  kle ek u kg cr

–  | e e u•  u p ku e k

Page 91: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

• –  *

•  g S r

–  c u e•  rg r Su g

• –  S

Page 92: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

• –  EGF L e L–  g L L–  AD L L

•  e Og

• –  = / * ( +(–  4 / * * ( +)(–  / +–  4 CE = 4 CE = ) r

•  g u g

Page 93: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  ) | g

•  re ee g r

–  L ( CE–  L )

Page 94: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

• –  | |u |

•  | k u u |• 

–  r re u g u

–  o ug–  u |

u r–  | g u g

Page 95: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

• –  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 )

Page 96: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

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;'}'

Page 97: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

 

01,2

Page 98: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 99: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

/

2 34 54 <6=17 ( , 5I A

Page 100: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  < 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 -‐‑‒

Page 101: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

/

•  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

Page 102: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

/

•  <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

Page 103: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

/ /  

•  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

Page 104: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

 

+ , 56 )1 ( BF D

Page 105: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 106: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  ) 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  

Page 107: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

 

•  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

Page 108: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

2 5 = ?0 ) ( 5 NCL

Page 109: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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–  ) : (–  ( (–  ( (

Page 110: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  2LCSS H T TT N NT I S MOF LO

•  XCMPL .( ,

1modM

9modM

1

11

11

11

21

99

99

99

Page 111: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 112: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  0 MCX M M MCTE NI,

1modM

9modM

1

11

11

11

21

99

99

99

Page 113: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 114: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 115: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  = 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

Page 116: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

 

•  ?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 =]

Page 117: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

 

•  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 =

Page 118: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

 

•  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 =

Page 119: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

 

=6 ? :A4; +)*. EP

Page 120: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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 *)*+

Page 121: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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 <

Page 122: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

 

•  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 *

Page 123: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

 

•  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

Page 124: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

 

•  LI W I S TPI[ W / =!PS , <

•  EW L S W S S I S LI PW TP FI V

Page 125: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

1

1:23 3 =6 0 *(), O M

Page 126: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

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–  * +((–  ) +((

Page 127: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 128: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  ?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

Page 129: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  :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    

Page 130: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  =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 -‐‑‒ :! *

Page 131: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

 

2=3 A B0: ) (+ OSGQ

Page 132: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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 ( ,

Page 133: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 134: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 135: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 136: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 137: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 138: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 139: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 140: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 141: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 142: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 143: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 144: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 145: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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 !

Page 146: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

(

5 6 A ;C4= ) (-‐‑‒ P HS

Page 147: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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 ( .

Page 148: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

)

•  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 [

Page 149: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

+ +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[

Page 150: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

+ +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

Page 151: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

+

•  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 [

Page 152: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

+

•  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

Page 153: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

+

•  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 [

Page 154: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

+

•  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

Page 155: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

+

•  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

Page 156: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

+

•  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

Page 157: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

+

•  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

Page 158: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

+

•  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

Page 159: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

 

67 7AB:C ,*+-‐‑‒ M EO

Page 160: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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 ,**

Page 161: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 162: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 163: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 164: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 165: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 166: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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(

Page 167: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 168: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 169: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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##

Page 170: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 171: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

7A8 : DE=G ,*+/ : UIS

Page 172: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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#

Page 173: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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  

Page 174: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  =U MIL VN W P UO I SM N VT I V RM (((•  HM IU TWS

•  V SVVR TIUIOMI SM

Page 175: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 176: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  =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

Page 177: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  =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

Page 178: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  =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

Page 179: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  =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

Page 180: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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 (((–  !

Page 181: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 182: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

!

•  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 -‐‑‒#

Page 183: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

!

•  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

Page 184: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

•  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

Page 185: CODE%FESTIVAL%2016%Final › contests › cf16-final › data › other › ... · • =wli8=0vi f? vfw8e*w05. * -8s4 wli 4e[04;4 e5h ehh05. * ws wli 40504;4 WLI T8SH;*W *E5 FI 05*8IEVIH

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;'}'