From 503ed8a3feffd7d1b1a14cf148917ce05e41878f Mon Sep 17 00:00:00 2001
From: Bradley Small <vc.Bradley.Small@lowes.com>
Date: Fri, 6 Dec 2019 11:42:06 -0500
Subject: [PATCH] exercise completed

---
 day_6/input.txt | 1057 +++++++++++++++++++++++++++++++++++++++++++++++
 day_6/main.py   |   53 +++
 2 files changed, 1110 insertions(+)
 create mode 100644 day_6/input.txt
 create mode 100644 day_6/main.py

diff --git a/day_6/input.txt b/day_6/input.txt
new file mode 100644
index 0000000..dfdd91b
--- /dev/null
+++ b/day_6/input.txt
@@ -0,0 +1,1057 @@
+HX5)C21
+VZD)VW7
+BTP)JHL
+699)GSD
+2FB)ZM1
+QS3)7XJ
+59Z)N3Z
+HS2)BKY
+7SN)YLN
+NJV)YC5
+YJP)D32
+5C8)KZ2
+3D2)FWP
+LN3)JHZ
+2CQ)4Q6
+NLJ)KWV
+7MZ)PDW
+Q2N)LP8
+2VJ)BRY
+V6D)CNL
+BBT)7QW
+Y9S)T8J
+F3Y)1X3
+G6V)1MG
+Q1C)ZL3
+8YV)F2H
+F8B)DRS
+D3H)R95
+GG5)WRZ
+KZ2)T52
+3Z7)X96
+9JC)B98
+VVK)96T
+1V9)52M
+F56)VKQ
+TV7)HQG
+TYL)NH7
+WQM)C3P
+ZQK)HCT
+LR4)P5H
+PKR)D9J
+MC9)4PC
+WKR)PHX
+8CS)B5P
+RBX)TV7
+CQT)J48
+XRB)CFS
+K32)57Y
+97B)Y3Q
+7XJ)41B
+59S)PDL
+N32)CW1
+Y8J)8NY
+R9B)S4Y
+13L)61J
+3MC)WK9
+NB9)XPY
+R8V)LHB
+1S5)2SL
+8K2)LST
+2NW)6H1
+B27)Q2B
+14L)W35
+41H)Z5M
+Y8G)8VG
+X5S)CFP
+FRK)6PM
+HTR)QRC
+BJ2)5Y3
+CS3)R9W
+ZL3)GTG
+FKX)NF5
+HC6)6FG
+QG7)85C
+Y5Y)1VG
+FLJ)DJH
+28P)K4Z
+S2N)J1C
+GY6)GW9
+CMW)QC7
+L7F)VJ2
+YG1)FKX
+GQJ)GY7
+WC8)KTZ
+6JS)M79
+L7J)TQD
+YVQ)ZYV
+R6X)1HB
+GTH)TM5
+JJJ)GJS
+CKH)NQK
+2NG)ZVK
+564)3RC
+VJ2)L7Z
+VW7)7SD
+6F7)SAN
+YVH)6JN
+T8C)CKH
+K8Y)F6G
+953)HQ9
+FBW)HWJ
+SGS)65F
+GXR)6SL
+M6K)K3X
+TJH)QKG
+DN7)YS4
+2B3)B2P
+ZQ1)WFM
+YF1)KS3
+NNS)NDD
+VTS)PF1
+9T4)H7Q
+GJS)8VP
+D5Q)NR3
+LHB)3RK
+H32)5DQ
+3GZ)1WV
+H48)8CN
+H5S)WZH
+SBH)LFH
+BCX)6M8
+T46)9P6
+Q1X)4L9
+72F)ZC2
+PCB)SC1
+YQ6)S3M
+Q2B)PMF
+V4S)YVQ
+NFK)5C8
+43S)9CQ
+CNC)YPF
+HVS)41H
+FBW)4GX
+NHF)45D
+QRB)CZQ
+L79)7MY
+W47)4XS
+GMS)8BJ
+6K1)5NX
+K53)JY1
+583)GZJ
+XHD)MRD
+NWM)DFD
+G46)JX6
+8BJ)1FW
+1MJ)692
+HTQ)F9B
+6PZ)92W
+1Q1)8MN
+9HS)772
+BN2)29B
+9Q7)VJ3
+C5D)C4R
+JS6)9F9
+PF1)J3T
+ZP4)BCX
+3X3)VKL
+V6L)SYJ
+3VP)Z3Q
+P1L)HXV
+1DS)8YV
+9P6)C16
+RMW)Y34
+W1D)72Q
+FC7)B3Z
+BD8)GMH
+38M)PCB
+6DT)LN3
+KBY)9W8
+3JS)R85
+C46)RBX
+NHF)9K5
+DHR)STK
+SSP)Z6F
+WYW)H7R
+NDX)NX9
+M19)TH9
+P3R)RTW
+BTS)R8V
+5GC)DSN
+D9J)3LM
+KCB)LWT
+TTQ)FH4
+72Q)FHY
+Z6F)F3Y
+XBB)VFV
+QW5)VVK
+YNC)26J
+5LK)2LR
+H2V)GCW
+BC5)GY6
+1P3)D8V
+TL2)465
+65F)S9V
+B5P)K32
+27Z)YVH
+VQ2)G6N
+Z2W)LHX
+D8K)JN4
+1FK)RK1
+HQP)2N8
+COM)Q1H
+CHK)VZD
+Q6V)Q1X
+1NX)C5D
+CC6)J37
+L3G)KKP
+KST)QG7
+6FG)T8C
+YC5)56M
+43X)HMM
+D45)2RD
+TH9)7FY
+SM5)S81
+9MC)MVR
+J48)JH9
+VQT)1D2
+2TV)SP7
+Q9N)658
+J1V)26X
+8L5)XWZ
+DC2)R89
+B3Z)7WL
+DJH)CHK
+LST)X22
+F9B)L4V
+RGX)K85
+68T)VG7
+YM3)SJN
+JSF)97X
+B98)RZZ
+959)PKP
+6M8)2VZ
+MT3)CMM
+K2Q)QYF
+RTK)HPL
+RWY)2PT
+7QW)LGX
+LXZ)X8T
+T43)KV9
+XSM)2ND
+X2B)SDQ
+HZC)KZG
+2RS)C6L
+N3Z)BR9
+2B3)P3D
+ZST)GL1
+QQ8)TYL
+7TD)BT1
+2VZ)8YW
+KS3)V4T
+Q1H)MJY
+S9V)ZMG
+MRK)9V8
+JVS)LL3
+8VG)BJ2
+SCM)72S
+GP9)RZB
+KS5)DN7
+Y34)Y3W
+LX1)8VF
+T6B)D8K
+RPB)564
+41B)364
+Q7Q)1FT
+TBG)479
+XBX)XP9
+JLZ)F2F
+XHK)SZQ
+P1P)ZDH
+583)Z7L
+CMM)DK2
+KP1)CFW
+69X)2VJ
+SYJ)BQQ
+147)2XS
+GQJ)FLJ
+ZCK)Q2N
+NZS)1BD
+3RC)3Z7
+TCC)BLQ
+FH4)SCM
+VM6)FQD
+G8V)ZXS
+8WX)2CQ
+HV4)J3F
+72L)MF6
+W66)953
+C3R)1KK
+4JC)YQQ
+Q7S)ZCT
+BJY)R9B
+2SL)XC1
+XRM)J1V
+SK3)NP7
+2TV)G1V
+HX9)J7C
+J37)6LZ
+GMH)NPR
+5T6)YRR
+7RB)89P
+T9L)Q7Q
+4GX)2DP
+6LZ)79K
+NHQ)YQ6
+Y3W)C3R
+6SL)K9L
+C46)P1P
+8NY)8RM
+966)HXQ
+B6S)C46
+T39)DDV
+XV7)2Q3
+YJB)ZX2
+QC7)3NF
+Y42)N28
+B1J)1SG
+PHZ)38M
+48G)GVK
+ZLY)X5H
+YKK)NB9
+WK9)4GG
+R5G)BTP
+J4C)QS3
+45D)LGP
+658)BN2
+B91)Z6D
+XPY)YF1
+FQT)MN9
+4ZQ)PJG
+W86)K8Y
+8VF)B91
+P3D)J31
+MTT)HH7
+GVK)RV9
+GY7)6R6
+72S)PB4
+XP9)FBW
+5NR)72L
+YM9)BBT
+C4G)Z5C
+987)G95
+CDG)YYB
+SZQ)J39
+BZY)YZC
+SKT)6PZ
+ZVK)5VD
+BHG)TBG
+X1X)9JC
+MST)959
+RYV)MQQ
+GL1)V26
+FQD)JLZ
+N5S)GWD
+B2H)L3G
+QYF)3JP
+WWB)B27
+PHX)VM6
+MSZ)CMW
+HH7)MKP
+9XZ)VNR
+3NF)H48
+YQM)CVF
+B98)H2V
+K91)2NZ
+8MN)PF7
+RZB)C1F
+YRR)3PR
+2VR)9P2
+4V5)VVC
+2DP)M6K
+KWV)8FW
+YPF)28L
+5LG)SSP
+3JP)TSR
+JW9)7WZ
+M71)P5J
+Y34)MRS
+GSD)XSM
+Q59)59S
+71Y)958
+QZC)FDZ
+QRC)RYV
+RDF)CS3
+3T3)LYZ
+5NX)PL2
+5L1)JJ6
+F1X)9T4
+RV9)MJJ
+ZHD)7JQ
+CZ9)3D2
+92W)C34
+VHH)QQ8
+364)RRK
+J3G)TZ5
+8VP)TZG
+3PR)VQ2
+ZM1)ZCK
+D7F)43S
+TSR)DKK
+F7C)BV2
+DFD)92T
+84M)HMX
+M34)RN9
+49F)KDG
+P9T)966
+6RG)TL2
+QCF)K6Q
+KKP)B7H
+JQF)XHK
+2XS)W1L
+XJR)XRB
+4GC)KB5
+BX8)G6V
+VKL)ZLY
+RBX)KZJ
+3RK)489
+V26)QRB
+2Q3)7TW
+GNF)WPF
+YJT)7K6
+PL2)71Y
+2ND)2NG
+HWJ)V9X
+VF5)VQT
+2WD)WD9
+MF6)GKK
+787)J4C
+G8Q)358
+HVH)FNN
+XQG)Z11
+JG9)PBB
+Y5Q)GXR
+R19)N99
+P5R)DLL
+246)SFG
+1SP)Y5Z
+16N)NFK
+2NZ)HW8
+B7M)LVQ
+GZ8)F7C
+L39)WK8
+2LR)YWY
+BNT)3Q8
+T46)98H
+VQT)5T6
+JX6)T43
+9FZ)P9T
+QRL)Q1C
+J3T)7H1
+PJG)2RS
+YMG)1NX
+YYB)XP3
+5LH)TY6
+NX9)VHH
+XBR)PF5
+89P)TQY
+254)L7F
+J6L)4LK
+FLW)QCF
+8FW)84M
+P7C)1V9
+LFL)3ZN
+7TW)JNM
+RZZ)GCT
+D33)4L2
+KK9)V63
+K3X)GG5
+B3F)FVX
+XW6)GMC
+4L9)ZRN
+6PM)BNT
+V54)XJR
+8ZK)MV7
+XW4)NJV
+QYM)SPV
+BPB)G46
+BQQ)DDN
+H7Q)4WC
+B58)Y9S
+9P2)SQX
+729)C4G
+ZFX)QLH
+Z5C)3B7
+M79)73S
+RN9)W9V
+F2X)H5S
+2HW)9FZ
+669)7PQ
+SPN)SKT
+QCV)MQ8
+Z5T)ZQK
+4HJ)3B6
+WZH)246
+1KK)2R9
+WD9)JFP
+YWY)8NZ
+CFW)R5K
+Y42)3KH
+LF8)8JX
+4WC)5T5
+X8K)W66
+T3V)1DS
+ZMG)NYX
+VVD)KBY
+N4B)49J
+TQ1)7RL
+WYW)3XW
+P4G)V6D
+2N8)GTH
+C16)YC6
+ZM1)TQX
+PBY)Y1Y
+X8T)BD8
+NQK)NLJ
+3KH)PBY
+4LF)MT3
+K85)69W
+SYD)72J
+CVK)HTR
+55S)M4C
+R95)XV7
+YLC)WC8
+FRK)D7F
+DRS)ZKJ
+7H1)F7Y
+F7Y)HQS
+HD2)CWS
+GZ8)P7C
+Q8B)HYP
+QCV)KXK
+YLN)MS4
+RYV)HTQ
+V4T)CBX
+VKQ)T6Y
+26X)YNC
+2KX)VQQ
+RX6)KRR
+P5J)CD1
+K46)2NW
+CWS)61S
+6QX)KFZ
+S4Y)NKG
+GW9)Y4L
+1W7)94J
+XQG)L39
+S3Z)365
+Y3Q)GZ8
+XWZ)X8K
+RRR)28P
+Y4L)7C2
+26J)SM5
+96T)Z9K
+QKG)N4B
+97X)XRM
+592)B58
+YS6)L7J
+ZS4)DZM
+Z7L)F3Q
+1D2)5TM
+LKM)P98
+K6Q)ZHD
+SSQ)HC6
+ZSH)MRK
+MQ8)BJK
+JHL)CVB
+HYP)YLC
+1SG)2VR
+ZC2)ZQ1
+JPZ)FRK
+P55)GX2
+Z6D)3JS
+8RM)C3J
+35P)JPZ
+PKP)JG9
+9BV)5NR
+7PL)CQT
+7MY)QW5
+TQX)XVY
+LR4)HQP
+29B)PN8
+7YM)P5R
+QYF)7Y7
+W1L)6RG
+7SC)NZS
+2RD)YT6
+BPZ)Y42
+3HR)5FP
+27Z)S3Z
+4LK)B2H
+C5T)RX6
+LF8)5CF
+RRK)LK1
+YQQ)R5G
+BLQ)J5Q
+KFZ)6B3
+Q3P)KVC
+HXV)BTS
+NYX)HK1
+J5Q)T6B
+YC6)H3Z
+NP7)3T3
+KR4)T5R
+SJN)JGB
+PN8)X2B
+Y7T)5LK
+G5C)8G2
+JN4)611
+NR3)CVK
+N99)WC3
+SPV)QRL
+ZYV)K91
+ZXS)ZSH
+V6D)LR4
+Z5M)YM9
+VPT)JFZ
+FDZ)5MR
+2VR)WFF
+BRK)NWM
+8YW)D33
+1VG)RTL
+7ZZ)5LS
+4GC)7RB
+FDC)96K
+GJP)VDS
+DKK)K53
+Q1Z)2VC
+PDL)RGX
+9V8)XBB
+7Y7)MPF
+C21)XHD
+LL3)CRZ
+7FV)YPC
+T3D)GM1
+G7H)LXZ
+TSW)1FK
+R5K)JKZ
+8P7)TQ1
+KV9)V54
+TM4)G8V
+K3X)SFH
+1TX)C8B
+L6R)T9L
+CFR)NCP
+YKK)LX1
+7K6)P55
+R85)9ZJ
+NGV)NHQ
+F2F)HX9
+HMX)3SB
+HQG)JL8
+V18)PGR
+YZC)HV4
+VCP)2F8
+4LY)FZ5
+F7Z)CZ9
+M63)XW3
+9W8)7YM
+QSX)D3H
+LVQ)B1J
+GX2)DC2
+6QC)T71
+LGX)D9T
+S81)9K1
+C1F)M34
+JBW)W9M
+PZK)973
+1LW)WZX
+VLH)QCV
+358)KMC
+XP3)SYD
+S7X)1LW
+61J)1P3
+H7R)TJH
+4C3)8K2
+1BD)GJP
+3B7)GQJ
+CRZ)X4L
+7PQ)N57
+DDN)LFL
+28L)9RZ
+LWT)J6L
+692)LF8
+BT1)4YS
+C3J)TCC
+Z3Q)G7H
+MRD)YJP
+D32)SK3
+HPL)2HW
+P5H)R19
+3JP)V4S
+GM1)H9L
+Q7Q)699
+ZRF)KGW
+K9L)2WD
+Q5Y)Q8B
+GY3)FQT
+4RN)D5Q
+SC1)ZP4
+W35)2FB
+5D9)8L5
+59C)592
+ZDH)4Q7
+RTL)2KX
+GCT)GMS
+HMM)TM4
+RGP)C55
+YZW)1W7
+6H1)H32
+SK3)XJ1
+J4T)59Z
+Y1Y)D4L
+F6G)YSC
+YVP)3X3
+QTF)13L
+CVF)G8Q
+96K)HZC
+G95)NHF
+BV2)9BY
+5LQ)XBX
+SFH)V18
+3RC)MSZ
+WFF)YOU
+CNL)HK8
+ZX2)787
+NKX)YKK
+C3P)WB3
+HQ9)WQM
+RK1)T3V
+9BY)MST
+489)YZW
+LP8)JQF
+71Q)CTP
+S3M)P3R
+N57)FDC
+TQY)9J6
+3SB)729
+3ZY)B3F
+HGL)97B
+BQQ)4GC
+KLD)F7Z
+BQB)N1Q
+WD9)XW6
+HQG)P1L
+VC1)KS5
+P67)BC5
+3B6)RPB
+X4L)XB6
+NKG)5GC
+GCW)HSC
+4GG)MSS
+2F8)HD2
+611)5DS
+W9M)PHZ
+6SL)72F
+8CN)C4F
+Y6C)K2Q
+3LW)9GD
+MFC)J9X
+B2P)X5S
+N28)Q3P
+CW1)VF5
+CFP)R6X
+K91)GQV
+3Q8)TNM
+KZJ)1MJ
+SDQ)PLC
+8JC)5YG
+3ZN)3HR
+4J6)N5S
+HK8)BZY
+FQM)TTQ
+TM5)526
+SQX)FQM
+772)BRK
+V63)FC7
+DZM)2B3
+BRY)YS6
+LCZ)YG1
+C4F)W47
+WFM)6QX
+N28)TVJ
+L7Z)468
+MVR)254
+ZCT)9BV
+SX1)583
+52M)TSW
+2PT)1Q1
+7FY)3BF
+YVP)LCZ
+2CQ)7TD
+D8V)5L1
+Q3F)ZST
+L7Z)YDP
+4LF)SWH
+MQQ)PKR
+WC8)FLW
+JL8)DF1
+5Y3)2TV
+5DQ)8X6
+M5Q)6D7
+KGW)QTF
+T2T)RDF
+4Q7)K46
+L4K)JSF
+FVX)HVH
+49J)XWX
+8NZ)3MC
+F6N)KP1
+WZX)ZFX
+H9L)F8B
+1MG)W86
+KXK)SS3
+X2B)RWY
+N1Q)669
+43R)Q59
+JH9)458
+C87)T2T
+XW3)N1Y
+GZJ)MC9
+2DP)3ZY
+5DS)JS6
+MRS)L79
+YP2)71Q
+MJJ)VC1
+7SD)MFC
+13L)997
+4YS)4LY
+479)CFR
+V9X)7MZ
+LP1)NNS
+B7H)ZS4
+5CF)VCP
+FZ5)3JN
+T6Y)R3T
+J53)VPT
+VVC)7ZZ
+776)Q1Z
+94J)LP1
+4PC)4ZQ
+T5R)GP9
+F2F)4V5
+PND)KST
+Z11)N7V
+TX7)M5Q
+VDS)X1X
+6D7)YP2
+YS4)5LQ
+FHY)7PL
+HD5)VTS
+BKY)WWN
+4HJ)4C3
+ZX2)V6L
+BR9)3LW
+DX4)BPB
+TY6)GY3
+XBX)Y5Q
+4XS)94T
+32F)8P7
+2S1)B7M
+D9J)YT7
+54D)Z5T
+KMC)7SC
+NJK)1KF
+CBX)SPN
+KDG)M7P
+PB4)147
+L4V)YPD
+JHZ)YJB
+J31)KK9
+JKZ)Q6V
+LWX)ZRF
+3LM)LKM
+4TW)4HC
+N1Y)4J6
+LYZ)TX7
+JFZ)4LF
+1FT)8CS
+8JX)LWX
+W9V)5LH
+73S)9Q7
+HFK)YVP
+RGV)HFK
+5MR)3MP
+8JC)987
+BJY)SGS
+NYS)DXM
+X1X)6K1
+JJ6)KLD
+ZRN)VVD
+6RG)GNF
+4Q6)NJK
+H3Z)7SN
+R3T)RRR
+57Y)KNF
+DF1)JYX
+XWX)6QC
+FWP)4HJ
+3B6)1SP
+9F9)9HS
+Y21)WVQ
+N57)1S5
+TVJ)Y8G
+TZG)T46
+1X3)BN6
+DXM)CC6
+T3D)SFB
+XQC)NDX
+X22)JBW
+365)TJL
+J7C)XQG
+VFV)S2N
+4PZ)PZK
+4HC)YQM
+NPR)Y8J
+VG7)WYW
+C6L)M63
+P98)JMK
+Z9K)1RM
+SFG)4RN
+VJ3)ZJH
+WZX)WKR
+PGR)NGV
+SYB)B6S
+J39)VQM
+N7V)RMW
+22F)59C
+H3Z)NKX
+MJY)HX5
+TJL)5LX
+GWD)S7X
+123)Y5Y
+XJ1)4PZ
+DK2)J3G
+V11)L4K
+958)F2X
+6R6)V11
+VW7)Y6C
+CD1)8ZK
+96K)JG2
+YT6)C5T
+KZ2)9X2
+JFP)PND
+WB3)9MC
+98H)BJY
+C8B)DX4
+465)HS2
+WC3)QZC
+9J6)XBR
+LHX)68T
+B2B)L6R
+468)XW4
+MN9)RTK
+TSF)6F7
+XB6)F56
+C55)HGL
+526)MTT
+9CQ)KR4
+699)9XZ
+ZF1)5D9
+NDD)BQB
+Y5Z)43R
+M7P)Y7T
+GQV)K1J
+HQS)4TW
+1WV)XL6
+LGP)QSX
+6JN)P67
+X5H)NYS
+DDV)74T
+PNT)ZF1
+V54)Q9N
+KB5)SX1
+1FW)3GZ
+CHK)G5C
+T8J)ZMN
+CZQ)VML
+4L2)CDG
+TNM)JVS
+JG2)D45
+D4L)Y21
+VJ3)RGP
+K1J)T39
+SWH)BX8
+ZMN)35P
+458)F6N
+43S)JW9
+KVC)Q5Y
+F3Q)69X
+S5H)8JC
+JY1)J4T
+VML)BHG
+NCP)43X
+2VC)4JC
+MSZ)YM3
+9K1)P4G
+SP7)XM6
+J1C)3VP
+973)PNT
+79K)YJT
+5YG)SBH
+56M)T3D
+SCM)Y7X
+R89)2S1
+YDP)C87
+VQM)32F
+J3F)W1D
+PDW)16N
+QLH)49F
+G1V)WWB
+ZJH)YMG
+VTS)B2B
+KTZ)48G
+MSS)FJV
+HXQ)27Z
+C34)CNC
+NH7)JJJ
+SKT)14L
+VLH)8WX
+7WL)SSQ
+D9T)BPZ
+YT7)54D
+72J)M19
+92T)HVS
+DLL)RGV
+S9V)J53
+BQB)QRH
+NF5)DHR
+85C)RYH
+XW4)XQC
+JGB)F1X
+2R9)PB2
+KZG)M71
+SS3)QYM
+T52)S5H
+7C2)HD5
+4TW)Q7S
+HW8)123
+JX6)Q3F
+HK1)22F
+9K5)7FV
+9X2)TSF
+3BF)6DT
+JLZ)1TX
+Q1Z)VLH
+5LX)S9H
+7WZ)N32
+X96)55S
+PF7)9Q6
+59Z)6Y3
+K4Z)SYB
+P7C)KCB
+997)776
+SFB)Z2W
+HSC)5LG
+9GD)PY5
+YPD)6JS
diff --git a/day_6/main.py b/day_6/main.py
new file mode 100644
index 0000000..6fb9a14
--- /dev/null
+++ b/day_6/main.py
@@ -0,0 +1,53 @@
+"""Day 6: Universal Orbit Map."""
+
+
+def get_maps():
+    """Read in the list of maps."""
+    with open("input.txt") as f:
+        return [line.rstrip("\n").split(")") for line in f.readlines()]
+
+
+def main():
+    """Drive the main program."""
+    maps = get_maps()
+    # print(maps[:5])
+    my_dict = {}
+    for v, k in maps:
+        my_dict[k] = v
+
+    dict_cnt = {}
+    for m in my_dict:
+        i = 0
+        v = my_dict[m]
+        while v:
+            i += 1
+            v = my_dict.get(v, 0)
+        dict_cnt[m] = i
+        # print(f'{m}->{i}')
+
+    dict_us = {}
+    for m in "SAN", "YOU":
+        path = []
+        v = my_dict[m]
+        while v:
+            path.append(v)
+            v = my_dict.get(v, 0)
+        dict_us[m] = path
+
+    # print(sum(dict_cnt.values()))
+    # print(my_dict['YOU'], my_dict['SAN'])
+    # print(dict_us)
+    r = [
+        a for a, b in zip(reversed(dict_us["YOU"]),
+                          reversed(dict_us["SAN"])) if a == b
+    ]
+    # print (r)
+    for k in dict_us:
+        dict_us[k] = [a for a in dict_us[k] if a not in r]
+
+    print(my_dict["YOU"], my_dict["SAN"])
+    print(len(dict_us["YOU"]) + len(dict_us["SAN"]))
+
+
+if __name__ == "__main__":
+    main()
-- 
GitLab