first 13 stars
This commit is contained in:
+2249
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,11 @@
|
|||||||
|
with open("input.txt", "r") as f:
|
||||||
|
biggest = 0
|
||||||
|
count = 0
|
||||||
|
for line in f.readlines():
|
||||||
|
try:
|
||||||
|
count += int(line)
|
||||||
|
if count > biggest:
|
||||||
|
biggest = count
|
||||||
|
except:
|
||||||
|
count = 0
|
||||||
|
print(biggest)
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
top_three = [0, 0, 0]
|
||||||
|
|
||||||
|
def insert(calories):
|
||||||
|
top_three.sort()
|
||||||
|
if calories > top_three[0]:
|
||||||
|
top_three.pop(0)
|
||||||
|
top_three.append(calories)
|
||||||
|
|
||||||
|
with open("input.txt", "r") as f:
|
||||||
|
count = 0
|
||||||
|
for line in f.readlines():
|
||||||
|
try:
|
||||||
|
count += int(line)
|
||||||
|
except:
|
||||||
|
insert(count)
|
||||||
|
count = 0
|
||||||
|
insert(count)
|
||||||
|
|
||||||
|
print(top_three[0] + top_three[1] + top_three[2])
|
||||||
+2500
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,29 @@
|
|||||||
|
# The score for a single round is the score for the shape
|
||||||
|
# you selected (1 for Rock, 2 for Paper, and 3 for Scissors)
|
||||||
|
# plus the score for the outcome of the round
|
||||||
|
# (0 if you lost, 3 if the round was a draw, and 6 if you won).
|
||||||
|
|
||||||
|
scores = {
|
||||||
|
"X": 1, #Rock
|
||||||
|
"Y": 2, #Paper
|
||||||
|
"Z": 3, #Scissors
|
||||||
|
"A": 1, #Rock
|
||||||
|
"B": 2, #Paper
|
||||||
|
"C": 3 #Scissors
|
||||||
|
}
|
||||||
|
|
||||||
|
score = 0
|
||||||
|
with open("input.txt", "r") as f:
|
||||||
|
for line in f.readlines():
|
||||||
|
hands = line.strip("\n").split(" ")
|
||||||
|
theirs = scores[hands[0]]
|
||||||
|
ours = scores[hands[1]]
|
||||||
|
score += ours
|
||||||
|
if ours > theirs and not (ours == 3 and theirs == 1):
|
||||||
|
score += 6
|
||||||
|
if ours == theirs:
|
||||||
|
score += 3
|
||||||
|
if ours == 1 and theirs == 3:
|
||||||
|
score += 6
|
||||||
|
|
||||||
|
print(score)
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
# X means you need to lose,
|
||||||
|
# Y means you need to end the round in a draw,
|
||||||
|
# and Z means you need to win. Good luck!"
|
||||||
|
|
||||||
|
scores = {
|
||||||
|
"A": 1, #Rock
|
||||||
|
"B": 2, #Paper
|
||||||
|
"C": 3 #Scissors
|
||||||
|
}
|
||||||
|
|
||||||
|
score = 0
|
||||||
|
with open("input.txt", "r") as f:
|
||||||
|
for line in f.readlines():
|
||||||
|
strategy = line.strip("\n").split(" ")
|
||||||
|
theirs = scores[strategy[0]]
|
||||||
|
victory = strategy[1]
|
||||||
|
ours = 0
|
||||||
|
if victory == "X": # Lose
|
||||||
|
ours = theirs-1
|
||||||
|
elif victory == "Y": # Draw
|
||||||
|
ours = theirs
|
||||||
|
score += 3
|
||||||
|
elif victory == "Z": # Win
|
||||||
|
ours = theirs+1
|
||||||
|
score += 6
|
||||||
|
if ours == 0:
|
||||||
|
ours = 3
|
||||||
|
if ours > 3:
|
||||||
|
ours = 1
|
||||||
|
score += ours
|
||||||
|
print(score)
|
||||||
+300
@@ -0,0 +1,300 @@
|
|||||||
|
BzRmmzZHzVBzgVQmZLPtqqffPqWqJmPLlL
|
||||||
|
hpvvTDcrCjhpcrvcGGhfLHMlLtMCqflNlWPJlJ
|
||||||
|
hGjhncHhGnhbTHczBBZVVSbRwgSgRV
|
||||||
|
rWVQjPQQjGRWNSrWrPjcptwBpqqJBtJBBcZgMdtq
|
||||||
|
zzmmpzfTCFpTlMlJJwBgMlqMBt
|
||||||
|
TvLszpbhhTLmsnRQPDQGWDWRvQSR
|
||||||
|
zGzvLlGlQHLGBQZlhBWhdjRdmdWRcjPj
|
||||||
|
fTJNfTfNSRWPhjdjfj
|
||||||
|
pbsbVVnpSnbVTprnbqqrzvLLgQlGLPLHll
|
||||||
|
ZCCCsWvNvmsCsCmZLZmgMLRpQMhwQRpQRfphfprpTfpM
|
||||||
|
tlncPjzlndctbzcPPBcjwDphwrfGGDffbDRpDTGG
|
||||||
|
cdqnddwzqjNVWVLZZLZq
|
||||||
|
DTLbDbRrlQbwhhNrmmfwdt
|
||||||
|
zzMJMzjCjJJjvLjMPJpcgPpzfhHdfqWcqddwtwfqdttcNtdN
|
||||||
|
pJCzVpCvDZBLsVRQ
|
||||||
|
STzBBbJzRRBZBRTqCCsfZLtNNLClCsfh
|
||||||
|
jsQnnQjjHcvQFrcPwCmtLCNlvDfftfff
|
||||||
|
sGFscMQQMMpqzqbMbd
|
||||||
|
QlNDWGsjQjgQllWQsbtzqTJczTJcbFmmFJJP
|
||||||
|
MhLrhgLVndRmzJFzVqqJqP
|
||||||
|
pSLnMdwhwdRZRSwhLZwLhdGWQjlsgWjNQWWSvgBsWDlj
|
||||||
|
THjSRFSddTjdBTcPLcVVvVBw
|
||||||
|
GzWnWfndWfznDfsnsBsPVwVwPPLL
|
||||||
|
zNflzJWqqzQDdSStHNZNpFFtbj
|
||||||
|
FSzDmsFSFlDlBzqVjqHHjHHpVgHLbp
|
||||||
|
rTrTtTQQntRQnQJQgggHZttVgHLBLhZL
|
||||||
|
WTJJRRQCRRJTRdBCRdvRNDFSWFMPmDlPPSsNPSzS
|
||||||
|
WQldlMtMVQgVMQHnDGbHGGnRnQmD
|
||||||
|
rqcZPrCFjmHlbGjZ
|
||||||
|
zSScchqwchBzTzFzhhSlcCwNtdVWWJgsVdMtWNgNVWTJTd
|
||||||
|
lMZqjMWllrTTspjprWWSSwgWNSVNDmWGVwFwgN
|
||||||
|
cdCCdLHcnndHJnmCRntLBnRzDvFNtNDVzgSgwDgFNVzFVv
|
||||||
|
BRLcCCJCmJdcRhfjPPZphrlrPqlZ
|
||||||
|
GdGqcrrZGDrvDJJqJHcBvmFFgmFMMgMgBtMLTssLmF
|
||||||
|
NbPVPDlljPmTmsTj
|
||||||
|
VfQDhflCCRWdcrQwJvvnJv
|
||||||
|
RLcWgLCqqPQLcqZwzHgwmmrmmtgwTw
|
||||||
|
DhbhNrMpnJSDJwVTHmmTVnTTVj
|
||||||
|
lrsvblMDlcWcfQPQ
|
||||||
|
PVldlphHwGwJJGdjZZWsRbbsGsNWrWQbNbQR
|
||||||
|
SqcDvTmDLtfmSmtqppfqzTgTQBrRQsbCFWbNNFQFBBrRbLNb
|
||||||
|
MgtmTgtfpqVlnVddZMwV
|
||||||
|
BdmfmPBPSbSNdGSdvWrwcZrccZPPcZnH
|
||||||
|
jzzLsjsMRlQQVHwswvvZrCHrrT
|
||||||
|
VqhzVFzplFlpLwpMphLRQQVRmSqgbdGtNJBmNSmgGbtggSgt
|
||||||
|
DHVpNZjdZjFZWVFHpvFvzmlRzPnlfznFRz
|
||||||
|
lrTBTsBwwMbrrwLPPfwGmGzvRf
|
||||||
|
scrtMhMCtJBBBclbHdHttWZWDSqDSjHj
|
||||||
|
wzqsPmqsbsfqBwPMNRMMZcZmFFNtZM
|
||||||
|
CgCnhlvvLJgcRFNNBdCpWM
|
||||||
|
QnQrVgHSvVHjbjTGBbbTHb
|
||||||
|
HdrVrdqFDdZVmHgRmDRFHMnTdTssMGnLnPJLbPTbCs
|
||||||
|
SczlScjwcNzplNzQSSfjwQSrTGGsbTsnTCnGTMCMLMGGbN
|
||||||
|
wQlfjrhfhQFHqZhRZRtD
|
||||||
|
RsfJDGJvzPNcjpddSWJWMd
|
||||||
|
LLCbBCwCrCmVVnrmhQFmbVhdcdlWpjZzSpMdWSpcWczSBj
|
||||||
|
rrLCbTwnHTvzvNGT
|
||||||
|
wPhPhbCqqSCrtJDlqvlrJr
|
||||||
|
RVVZddLFRZZcQLvJJtzptlgPJp
|
||||||
|
TVQRZGVncFdTGWZdCNShHhfPNwwsWPwb
|
||||||
|
dzLVzPSgrgDDDCMSMLLPwFmdTTcsvmwNwjNsHcFF
|
||||||
|
nWBGntQfGNGBflWBBqlpRQGbWFvjwsbsFswbvTHjjbmHTc
|
||||||
|
tBNJBnGBflQnDPJrPhDgrPVg
|
||||||
|
VtWztWtqpqzWpWzqjNRjNpWTmrrmrSbnmJwSJwnMPrCSJVwM
|
||||||
|
sDHsBDhBdsBZGcHvLHDLhhCSnRSwCJMZrPbmnMbJSCSR
|
||||||
|
ccLRhgsLBdRsdHNTFFNNgqTglqzF
|
||||||
|
hztlmDhPhgPlPNNgmZMCbmwwQjcwjjwMjVCd
|
||||||
|
RSJRrRqnqQJFqvnTGrHCcHHCCHHbHHMcMvdM
|
||||||
|
qGJsnQTRsStsftPlhPNl
|
||||||
|
BFFBLPRCwsLwhlPlRmhcGGrbmmGjfNTTnp
|
||||||
|
VJMVpzgqggJnrjmjNcMjmT
|
||||||
|
VqdSZtQgZvtdzqHqHtVZdVQpCDWWFdwlRPDpWPPBCswlWD
|
||||||
|
fCWCsjPzcbzwRSzVTzhhDLqvdg
|
||||||
|
TmJtrNJrBLSLJqgS
|
||||||
|
ptNTQFHrZlnpFPwsWMbRjCpcjR
|
||||||
|
nJmQNCmbmlllmbClbfMLjMFqbGBsdLFq
|
||||||
|
ZcgTWcTnMqqMTBqF
|
||||||
|
tPgctSnPctZZgDWzZgQHwNmHlhlmzlQhlJlw
|
||||||
|
ZpTCwpffdslvgShCBhqhRz
|
||||||
|
FDMPnNFNmBPzvRPRBg
|
||||||
|
nNgMrnnDGjDmJMmnFdZTTsdsrZrslcwcQr
|
||||||
|
pTmczpCldcdDDnPttpvWSqbpJf
|
||||||
|
jgjRZMGHhGLgQrjvPWzPJgJvzStbbq
|
||||||
|
LGNLLNBBzcDFCBwwFC
|
||||||
|
nJTTqnrNvTzNMzzNfqrTPrJnwpwPpZpsHccZVsBRpcVHwpcp
|
||||||
|
bgDhgbghLWmFmStctVpZtBCVCCpfZp
|
||||||
|
LLSgLGSjggFGbSSbmMnrvqvzjfzTNrJrqM
|
||||||
|
RRpDmmPMTjwfGmJQgQ
|
||||||
|
WsNscdnvvdVZFVnnrZbjjflwljlbzfGFjQjq
|
||||||
|
NnLZsNnrrVVVcvdBLTPCPCRMwhPMBMPhCt
|
||||||
|
lbVvzngGJnVbJHpHtHNPpdSQvc
|
||||||
|
TsMBswFZsWMWBZMNwPtNNtRNHcNpSQ
|
||||||
|
CcZCTrZDsjZTsTsshWhrWrTnfgbLDfJzVVLVVlgfnzfVGV
|
||||||
|
JzTTRtJRZWmWjrMHCT
|
||||||
|
DDFGlLGcGlSSSLsFGBspPBmNMBHMghmWNmWjWCmWtH
|
||||||
|
nSSpnbsGlLDnpPsSSspFtVvffRQdVzqvvbqdfVQwRz
|
||||||
|
sMhzszlHHDsWbthHDqsbJjpLNtmjVJmVLLVLVLBp
|
||||||
|
nrTPrGwfPLdprzJzdL
|
||||||
|
wgPQcTGGzgccwCgnRwgRChFhlWSDqWWQMWhssSsMQl
|
||||||
|
NSNmwtpSpCpvMphCsr
|
||||||
|
PHcRGPLJMrsvzsqG
|
||||||
|
QHjbnRMcfbPbQZmlZgZlgBBQ
|
||||||
|
cPRPbhQjbQRdtPQdLqLHqzFZjCFCqLjC
|
||||||
|
mmfsnnwrfvwrfSNZFzHHLDCFNlLlqDlN
|
||||||
|
wsmrwswwGTffMrBnmQttJtcMZQQtPJPbZc
|
||||||
|
MvBPDDRRdnnvHPCHZLHZsFLL
|
||||||
|
rmJcbVqbcjWwWjQHLzTZFTHSzFrpsz
|
||||||
|
cmwllVqqGJbVVVmmqbQcmgRnRvGhGfgDRDZBBBvRdd
|
||||||
|
nMvMhMnvhnbTZWSSZgHmGJDFmmNDzBmbNmdGBN
|
||||||
|
rCsPLRCssRjrLLsrLlwRVrcNJQfDQfdBmmfNBGJNzmDPfB
|
||||||
|
CRjCpLltgtJgJJWq
|
||||||
|
jshCzJpjzTPpmCWvSlpfwHfSWglf
|
||||||
|
LQMMNMnHtDtLVRvwwgRWlldgWD
|
||||||
|
qHVrQNHVMFQtrrBBQMBcrrZsZbzCZhbbJZJsmmsmFPTC
|
||||||
|
JZQZnsQNMqTngZqJBVfBfPPVBNrwvfPw
|
||||||
|
SSmDstFjpDpCszDjcLLhrPVlGlrGGVBwrvwVPt
|
||||||
|
FSssFcLjFjbmFFCzjLcFLRDnMJnTHRnZZTdWqZZWnMnRnZ
|
||||||
|
GbHRHpldwGMpWhHpCMBlCbRdVSLhnqJLSrDPLPPLPDqVDrhh
|
||||||
|
gvjWWQvgZFtQFFNqLnVnDnSJzzztDD
|
||||||
|
ZccccfTsffHdWWdRWwsw
|
||||||
|
ClCtbHMlnnPPlszV
|
||||||
|
gSDWSLgWQWQJJNWqgtQjPsnfcdVcLVdVdzfzVzff
|
||||||
|
WQgqtFQgDgQSFqJhqhSJvNDRrZMZHwHMCbZhTpZbGHMTMG
|
||||||
|
pZJZlCQtHFhPfdNfCh
|
||||||
|
zcmLSVczwcMcLDNFHdLPhPWH
|
||||||
|
szvVVnBmnTGQtHTQ
|
||||||
|
RVVCNDlNGzlGZqHGHWqWhGqQwH
|
||||||
|
ZFLFTmpLvvmSqsbb
|
||||||
|
TrfpBfJpJMlnnNfNZD
|
||||||
|
qHHlDClHhltMqQsHDhHslGznwdTnzzwDGSdfnwGnwG
|
||||||
|
mZRNcNcLLPNPBFFbbPmLmbZFSCVfJJTVndVfSwnRzznfTwCS
|
||||||
|
CcCWFbbBLCWtgWgHjghqvv
|
||||||
|
TjbzlnlFmfqCFFVVCRWr
|
||||||
|
PhMcLpPDtMLpwPDvLPJbMhSgVCGqggVqQgCqCgCgSWvv
|
||||||
|
btbZbNZhJDJJhDtwtsTTTmBzzBBmlNlmHj
|
||||||
|
FqhjWtqlqmmsnFPTCvMCQMTTCjQd
|
||||||
|
pfffRfLpgrgGgzrNVzzpGVzRCdMCPJbwwcVMbQPCJVMVdbww
|
||||||
|
DGGDZRGrHggzSsFQnnWShmtH
|
||||||
|
vtHVVMMrvVMVrSHvLgvlHcZFCnRCZcccZtRRZfJFCJ
|
||||||
|
rdDjGsdTQDcNZfdncCRR
|
||||||
|
rBDsTwBbjbmbbQswswPhqVmmSvpVhlvvqMhHhh
|
||||||
|
vGBLrqMNvqSLBvvrNbllLHfwStWWtFttccjtRtjtcj
|
||||||
|
MhCDJmhMDzmcRRcjzWfztH
|
||||||
|
ZQDmDhVVCQbBVdVNMvvv
|
||||||
|
ptCtCzhWPWptnhVzzpGZbZTjTjVjFGjVFgVl
|
||||||
|
fQswRRffmRqZlgrqqFjjSgGg
|
||||||
|
HwsQDNNsDsmRLLHmffsfvHptBnhtzCvhWpZWBdhnMdCh
|
||||||
|
RlHzzTqczBPfbnvcpB
|
||||||
|
wVtNwpSZstppwwMsZhsdnLvnbtBBmbnLFFdnmF
|
||||||
|
WNQJMVWsZWwGJWhhSNrQzlgHrDCgQRHpCHrl
|
||||||
|
RrZWpJZRrZpdTGstlchLGGlLMd
|
||||||
|
NqjDPCQPnQCSvtMzSLhhjM
|
||||||
|
nQVQDDDDfwBwNCVCNVFNpWpgJgrRTmLTmTmgRTWF
|
||||||
|
SHMcrMHpcjGcjSrMMbvSvvSvwFTLJwJNtFGFWJNtDLFTLfWN
|
||||||
|
zqRnPfzQCRzqsmRPzznhszzLtLwQwwFTgWWLDLgWFTwTNQ
|
||||||
|
qVPZmRZhsCZPhZlRCqRRRCbfpccMBjvMVjdHjjMjSvdf
|
||||||
|
VVQdHwBZLVltlddtBczhrzvGcWWFRwgsFG
|
||||||
|
TDTTTqqTSSqjqnmTmPqPPmTmGhRszvsrzsjRsccgzrRzgWGF
|
||||||
|
DpJPqpWqHbZpllpt
|
||||||
|
cCSCFsnnZFnscDtNdJFJtJtdmb
|
||||||
|
VgBqBsqRrHtNdzmNrt
|
||||||
|
BGLLVVjRBsqPBfsGwPsMfSSZCSfTZTZQpSphfS
|
||||||
|
plCHCHlgglHHGpNbtngNrDvBDpfQDBQfZDfWZVrr
|
||||||
|
mTmMLhRfwhsLPQvQZDMZQBQWMB
|
||||||
|
cwsssmqRTFFfFgtbCtGl
|
||||||
|
LQPPrCPnMZwqtRMn
|
||||||
|
cWTSlJWlcplJdDTdGdpDlGcGgqmtwwZtqRrNRRmRdNZqmgNq
|
||||||
|
GSJcJSjsjTpsvWGWBHLLvVVBBBrFrzVz
|
||||||
|
NVPCSPMNDSNFVSWCsJJJmpGmZZGLLcpZLHGGtsHt
|
||||||
|
fwzlBBqghqvzqqlDrHbpHjZHmGZbLZrHLb
|
||||||
|
dnBgnDqQvwRnSnnFMFMP
|
||||||
|
BCbPsFFwCRHmDSBmWnvDDj
|
||||||
|
phhZVzdpVfQZphhZpRhSVnjmrcvvnrWtDrvWDS
|
||||||
|
TfQJMfLphMhJdfdzpQJRTPbwHHNlgbGwsTGgCP
|
||||||
|
ttWLlnnvnNnBBtlTqWlpvpndQdZsQQFssFDdsRFdVdRNFQ
|
||||||
|
jSgrScrbGZSGrrCGsFVMssFsPPFcDDMV
|
||||||
|
bzSmJbfCZCbzLwllflwqtvvw
|
||||||
|
zmFTJwFLPmzLztmjDzTJwfNrdFNrFppBSNRGNGdbrpBR
|
||||||
|
gqlhWQgsZMsvqMlMMvsvqsNlLbcdppbrRpdbbcSrrbbr
|
||||||
|
vssCgVgCsggZQZCgsnsqWgWvfJPDLwffwTPPmzTnjTPmPmwJ
|
||||||
|
SpcRTPQLBLWpNNzjmmwwwRrR
|
||||||
|
tGlfvGhfnbDlbqlChnfFMrwsmwNssTMHMHjFwv
|
||||||
|
ZlhtCtffCdWcZWZVVT
|
||||||
|
jTTCcWHWJNgCGTzTmnzrmnGn
|
||||||
|
BwRRbFvtvvQmJJFMpMJr
|
||||||
|
ZBBwLvqbBZsRsbVsZSqbcZdJjHHjhfPCJfJfHhgc
|
||||||
|
VrnDSvvrLrfTdTLGfdRp
|
||||||
|
zcJzmcFcHGfdGmWTVd
|
||||||
|
tHsMhwPVctccHFHFcbSDbbPjnNbBnbvBQB
|
||||||
|
QttWQwLTnLnWTtnffnLQSBFVjNvBjBFNgMdCsVWsjv
|
||||||
|
pDqcmmRPHqgVBddjvN
|
||||||
|
DcclzbcbPbJLnNTfnw
|
||||||
|
plRcpsZDGlGZvWvMCNcLtttq
|
||||||
|
SrfrwSjSVrSjwbmSrHzmHJCQQPQzqttNNQJMzJtqMW
|
||||||
|
wSHVnfHfWwwHWFVfSnfgmmRsslFZZDBBGZsZsDTdGRTp
|
||||||
|
qSFQSgQNgQBrBHHcrW
|
||||||
|
VTmjVJLTwlTmwTVmsMJMVlJmPvcbvvbCBbGBPjGvBbBGWcbb
|
||||||
|
DnJTZwmnZRhnpqNdWt
|
||||||
|
dTVHjZLLZDVCfVHtLDDjQbscjWbSJMJPjsbWWb
|
||||||
|
FnqrnmzzFllmsWwtsFtQMMFc
|
||||||
|
lmqzzzngGmlNNBqGllzlBNRvptHHpTCHpDLpgDZdgvHvDD
|
||||||
|
sdRZQbCfZTSTdlfTZCffccWPHPPcPPwLwctRnLWn
|
||||||
|
BBJDzFVgCDrCJrqDJJhqJVVMLPHwcctFwcWHHGLcwGwGHnWc
|
||||||
|
ghpJgqqjCZbQdZpd
|
||||||
|
tbcpzbHSszcHBgqHGZgJJJhhww
|
||||||
|
jfvdvRTffQQrrFCRFTnGwJRqNRZVpJGZLZggLh
|
||||||
|
nQTjTnMndlTdQFMvnrClCnpzmzDtbbmBbcPSzzlmmtzP
|
||||||
|
BqBqTCSTcqHsJHHM
|
||||||
|
WWPGVPLtzVgWtjWPGzVjzVGcbDhPsRbDcsbJwNRswRDRss
|
||||||
|
VQfWjfLFGWLjdFfVzTZZpJTpnmlTrSQlBl
|
||||||
|
jLNsZjqSHCsGdsmpsm
|
||||||
|
MvnVFzWMwMVWzfnVDwfBMfnnrCtdtPmPlRrdrJCJrtPDrrPD
|
||||||
|
zznfFWwMfMfFMwVTMQFnQjhjgjSZhCNbLSTcHHgbbC
|
||||||
|
GGtssttVmvnnGNMQrrVzgwVrCWMz
|
||||||
|
FdhfhhcCDhHLfzclZMcrwcQMZM
|
||||||
|
HHqqCBhHSSpdmjGqmGjtjtjj
|
||||||
|
bbQLtGMQQtQRQtrDtGprrrbCqwplZhhqSqmdwvdzqqqhSmpS
|
||||||
|
FsJjJBfnsJcFcFfjVPjWBzldqhqnlZZZzzhmnSvSnm
|
||||||
|
JPcFfFWjFHJVVsVjPVscsDlLNRHGDbLRMRCDNrCGbG
|
||||||
|
JdMdlMRJnTwdvcjv
|
||||||
|
CDLHbNSzzLFgHvnTjrswBNBTNT
|
||||||
|
QgbvzSFQmZQPQQRW
|
||||||
|
NTBrNzrpjjjCwGbB
|
||||||
|
FRbQlcvFvcRQQlRsMlRRRZjwCqMwjmjwJZdLJmjCZC
|
||||||
|
cVPPQcvlWDNhrbPz
|
||||||
|
VdbVtbbZJdtJVVdDVZmTLqqTSQvNLjjDShhvSG
|
||||||
|
zplpnBnFpnrrlghGNpLNqHvqvjNj
|
||||||
|
cWncllnlPFWzcMwtWWtsVLVRmJWCds
|
||||||
|
ShLSTnZnTSttTSbLQdfSZTMwcDHwwcHnJvDHnlnlclMM
|
||||||
|
NmPMsssRrVwjDclHJwwR
|
||||||
|
gNNMWGzNmqGdtfZTbGGb
|
||||||
|
sWNNlRHnmJtmntJt
|
||||||
|
brbbBTbbFbCbqqGgBTrCfmQVVZfSSQQSVtJZSrVZ
|
||||||
|
bbFqvbDvvGGLGbCCtBGDLbLlcPNHhhccPNcdPPchlsdR
|
||||||
|
DCFvDvnCnNfMBmMMslDZML
|
||||||
|
SQQQJHwpSgJSJHQWSWHqJWWbmcBBBLLTsmhhTcZbMhmlshcb
|
||||||
|
RJRgpJHssgwSQHRqsQPGGjjtNCrrFvvnFjjPrP
|
||||||
|
mThmsgjzTPjMpcvtWP
|
||||||
|
GNNBVqVGNZbbNbNqqZQVNVNbWcpdtMCcpCtMWCdCPpQccmpp
|
||||||
|
VSmNrmmbBfZVlsrssrLTRhRhTn
|
||||||
|
TdmCvLDCpTRNTdFbbWnnSWCfhjbbzn
|
||||||
|
GrrMsPVGcQHBGMbhjjSgWfHHDbjb
|
||||||
|
BPBVqqrQPsQqwrrmmmJdRLDDqFRplT
|
||||||
|
fpDDJljDlCfDTjprjrfbddWthCSCtdPPQFhSSSWW
|
||||||
|
HsLZgMGbgBBsNzMvGbdVtVQzFRQSthhFPdtP
|
||||||
|
sMBmGBmbNvLHGMnrDppTcJmcjpqljf
|
||||||
|
ptSpSJQqpbNGGDDhcMWrlNHcZZWWls
|
||||||
|
zRLRRRjvvgjHMMsMpWpc
|
||||||
|
vmCPLCgwvwdnCzmvLbpTbVQqJJPbJPpTVq
|
||||||
|
TJCfhhJVFffrJJQQllNWcvWhwvWD
|
||||||
|
GPSGjjpLslBbpLpLqqqPDvdwvwvNzQWGzDDNdzGN
|
||||||
|
msbRjbpPqsRpHnlZrmJlnVHT
|
||||||
|
GGfFsCCTvGDsfTTrhsCMMzptZJMdpdgtrpdMcV
|
||||||
|
LBlwBHPSqjwwlVggHpnMZcVHMt
|
||||||
|
ZlZZlBbRPGGTGfmRsD
|
||||||
|
CtCjbVvzQQZTWVdd
|
||||||
|
MlSqWlmsmGBSHJHTDFHZ
|
||||||
|
pcqsmsplwsqclwRtRWgtRnPPvb
|
||||||
|
zCrzCrsdjrhGDCFqGDjRRPtpWfQQcpfQZcCZPp
|
||||||
|
VSVwVMgLHHLTwMDTMMVnbWPRZQRcRQPptWnpbZcb
|
||||||
|
MNBBBlSMvLVwTlVTFdNdhNhFsqsGDrzm
|
||||||
|
rBLWTwTThWwVVDTwHBsZZWppvpGtpptppmRvFFFMFMfL
|
||||||
|
qPPNCCbqcbcNqbqQjjJQqzjRpptmlpMGmMlJtftmtFHpMt
|
||||||
|
QnCgzzQbbQqPcPQnncbdQdnVTwDssZgrShBTVgZZsBSDHT
|
||||||
|
PFGJFqnfqmPgFJQPWdbLdpDRhbphWjDm
|
||||||
|
rclNHvcrzCNwrWRprjdMMMph
|
||||||
|
wsZHwZNvRRQsQqBV
|
||||||
|
LqlGCPlPLTCPqqQlpqLlWfBfWgcHNRJRfWNsncGH
|
||||||
|
VVtdwVtDDdVmhrdwSBmjbdzNHgfgJnNnsSnHsNffHgRsgR
|
||||||
|
wVzhbjmDbDrwjdbztFDDthMCvqPppZQBQLZQTqTvFTvZ
|
||||||
|
BnQnQFwRmRwmwdBSFDFnmSDVLCJTCTppVVmGLVTCLcgVpC
|
||||||
|
ZlWvhvZjNrbNvqjNhlfPfqjCGHrsspggTpVLpsJCpcJVgg
|
||||||
|
vPzNvqjWhqFzGSnRGMDG
|
||||||
|
wZnMZzzZZchDRtVsqtCtwV
|
||||||
|
WmWpWWmPPWrmrmBmWrTlTFPNVqVCRSDCQHcqVTtTqsSDSTSD
|
||||||
|
PrppdFlWWlfrWmpWFffrdcGjJJGggnnhZGdLLgGGndvz
|
||||||
|
FShHNmNhRhNJmBnQBQJrmP
|
||||||
|
VTgzDTjwfffwzDvwlcczzVSJbQlBQSWBWCnPJPbJWWbC
|
||||||
|
tzSVtzvSvGSRZqqFMNtpRR
|
||||||
|
hPZhGDZpnCGtDhznjmLmdJffdNzJ
|
||||||
|
glwsSrQwBvLdgLzdcj
|
||||||
|
QsRbHllzzlHwHlBszWlTBFbpDPMhbPDVGpGFpPtFPp
|
||||||
|
SRjStRDctgDSBzLvPvNrDhmPLr
|
||||||
|
QqTHGTPJmmHmhNmH
|
||||||
|
TGQZsTqFnQZCJTPsnJnZQMjVRBVtcVRSVRBlwccSCtBS
|
||||||
|
bbsNsvsvnNPTRRllbblLqhtQCqQSLCGGHSqHNC
|
||||||
|
wFpzFgqVzqVJWFDwqJDmSBBmHBHhShLQhCGSBCGH
|
||||||
|
MJVpFMqgwMqRRbZsMbZMrP
|
||||||
|
PPdDhvNDQdmgQPZmQVHHtHGGWVGbffWGvs
|
||||||
|
MMLCTRRLlLclTLRMRLCwMLHWVctbVVHWWWFfVjVGsFWW
|
||||||
|
MRSMMlpTJRqClBCRqBDnzqgQPnqgznZPZqbP
|
||||||
|
MrMNPNNpjvdprWtrpMsthqBfqlnfqcGhVBqFRcnqFG
|
||||||
|
QbDgSSQbgSDDmDVmlqSCRllRcFqnqfBl
|
||||||
|
QVJbVmwwDQbzVTgbppNJNMWNjNNPrdpM
|
||||||
|
WwJJNbtHfpLpVgZZPVFhZh
|
||||||
|
vmmqlDvRvRfqBSrlzmmMjRBhcVhQVZhVghCQQQQTcTrPTP
|
||||||
|
jSqMmqRzMDDjvqlBqsBMBmmwGNJwJnwLNfbGwddswnJtJH
|
||||||
|
RLgRmRggbvbzzPmmRNmzsQWFtSGNtwSNQnntFwnnCw
|
||||||
|
pDBrBHpHhlldphHBHhJVFSLnWWFJttCtQSttSS
|
||||||
|
hfHrpphHBppfTvmzgMmbLbgf
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
def priority(item):
|
||||||
|
if item < 'a':
|
||||||
|
# uppercase
|
||||||
|
return ord(item)-38
|
||||||
|
else:
|
||||||
|
# lowercase
|
||||||
|
return ord(item)-96
|
||||||
|
|
||||||
|
priorities = []
|
||||||
|
with open("input.txt", "r") as f:
|
||||||
|
for line in f.readlines():
|
||||||
|
line = line.strip("\n")
|
||||||
|
#print(line)
|
||||||
|
h = int(len(line)/2)
|
||||||
|
left = line[:h]
|
||||||
|
right = line[h:]
|
||||||
|
print(left, end=" | ")
|
||||||
|
print(right)
|
||||||
|
for c in left:
|
||||||
|
if c in right:
|
||||||
|
priorities.append(priority(c))
|
||||||
|
print(c)
|
||||||
|
break
|
||||||
|
print(sum(priorities))
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
def priority(item):
|
||||||
|
if item < 'a':
|
||||||
|
# uppercase
|
||||||
|
return ord(item)-38
|
||||||
|
else:
|
||||||
|
# lowercase
|
||||||
|
return ord(item)-96
|
||||||
|
|
||||||
|
priorities = []
|
||||||
|
groups = []
|
||||||
|
with open("input.txt", "r") as f:
|
||||||
|
group = 0
|
||||||
|
for line in f.readlines():
|
||||||
|
line = line.strip("\n")
|
||||||
|
groups.append(line)
|
||||||
|
if len(groups) == 3:
|
||||||
|
for c in groups[0]:
|
||||||
|
if c in groups[1] and c in groups[2]:
|
||||||
|
priorities.append(priority(c))
|
||||||
|
groups = []
|
||||||
|
break
|
||||||
|
print(sum(priorities))
|
||||||
+1000
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,16 @@
|
|||||||
|
elves = []
|
||||||
|
count = 0
|
||||||
|
with open("input.txt", "r") as f:
|
||||||
|
for line in f.readlines():
|
||||||
|
line = line.strip("\n")
|
||||||
|
# Some python magic to split out the strings and convert them to integers
|
||||||
|
pair = [x.split("-") for x in line.split(",")]
|
||||||
|
pair = [[int(y) for y in x] for x in pair]
|
||||||
|
elves.append(pair)
|
||||||
|
# Elves is now a list of list of lists.
|
||||||
|
for elf in elves:
|
||||||
|
if ((elf[0][0] <= elf[1][0] and elf[0][1] >= elf[1][1]) or
|
||||||
|
(elf[1][0] <= elf[0][0] and elf[1][1] >= elf[0][1])):
|
||||||
|
print(elf)
|
||||||
|
count += 1
|
||||||
|
print(count)
|
||||||
@@ -0,0 +1,26 @@
|
|||||||
|
elves = []
|
||||||
|
count = 0
|
||||||
|
|
||||||
|
def inrange(lb, ub, check):
|
||||||
|
"""Returns true iff check is inclusive in-between lb and ub."""
|
||||||
|
return check >= lb and check <= ub
|
||||||
|
|
||||||
|
with open("input.txt", "r") as f:
|
||||||
|
for line in f.readlines():
|
||||||
|
line = line.strip("\n")
|
||||||
|
# Some python magic to split out the strings and convert them to integers
|
||||||
|
pair = [x.split("-") for x in line.split(",")]
|
||||||
|
pair = [[int(y) for y in x] for x in pair]
|
||||||
|
elves.append(pair)
|
||||||
|
# Elves is now a list of list of lists.
|
||||||
|
for elf in elves:
|
||||||
|
lb1 = elf[0][0]
|
||||||
|
lb2 = elf[1][0]
|
||||||
|
ub1 = elf[0][1]
|
||||||
|
ub2 = elf[1][1]
|
||||||
|
if (inrange(lb1, ub1, ub2) or
|
||||||
|
inrange(lb1, ub1, lb2) or
|
||||||
|
inrange(lb2, ub2, ub1) or
|
||||||
|
inrange(lb2, ub2, lb1)):
|
||||||
|
count += 1
|
||||||
|
print(count)
|
||||||
+511
@@ -0,0 +1,511 @@
|
|||||||
|
[V] [B] [C]
|
||||||
|
[C] [N] [G] [W] [P]
|
||||||
|
[W] [C] [Q] [S] [C] [M]
|
||||||
|
[L] [W] [B] [Z] [F] [S] [V]
|
||||||
|
[R] [G] [H] [F] [P] [V] [M] [T]
|
||||||
|
[M] [L] [R] [D] [L] [N] [P] [D] [W]
|
||||||
|
[F] [Q] [S] [C] [G] [G] [Z] [P] [N]
|
||||||
|
[Q] [D] [P] [L] [V] [D] [D] [C] [Z]
|
||||||
|
1 2 3 4 5 6 7 8 9
|
||||||
|
|
||||||
|
move 1 from 9 to 2
|
||||||
|
move 4 from 6 to 1
|
||||||
|
move 4 from 2 to 6
|
||||||
|
move 5 from 8 to 7
|
||||||
|
move 4 from 9 to 2
|
||||||
|
move 1 from 5 to 8
|
||||||
|
move 1 from 3 to 1
|
||||||
|
move 2 from 3 to 1
|
||||||
|
move 1 from 4 to 2
|
||||||
|
move 11 from 7 to 2
|
||||||
|
move 5 from 5 to 1
|
||||||
|
move 1 from 6 to 8
|
||||||
|
move 1 from 7 to 6
|
||||||
|
move 3 from 6 to 7
|
||||||
|
move 1 from 3 to 2
|
||||||
|
move 1 from 6 to 8
|
||||||
|
move 11 from 2 to 1
|
||||||
|
move 1 from 9 to 8
|
||||||
|
move 1 from 3 to 7
|
||||||
|
move 4 from 7 to 9
|
||||||
|
move 3 from 3 to 7
|
||||||
|
move 4 from 8 to 2
|
||||||
|
move 3 from 7 to 6
|
||||||
|
move 2 from 6 to 3
|
||||||
|
move 5 from 4 to 1
|
||||||
|
move 1 from 6 to 5
|
||||||
|
move 26 from 1 to 7
|
||||||
|
move 1 from 4 to 6
|
||||||
|
move 22 from 7 to 5
|
||||||
|
move 4 from 9 to 1
|
||||||
|
move 3 from 7 to 3
|
||||||
|
move 1 from 6 to 3
|
||||||
|
move 6 from 1 to 7
|
||||||
|
move 2 from 7 to 5
|
||||||
|
move 8 from 1 to 9
|
||||||
|
move 4 from 3 to 4
|
||||||
|
move 10 from 2 to 7
|
||||||
|
move 6 from 7 to 4
|
||||||
|
move 2 from 9 to 5
|
||||||
|
move 1 from 5 to 1
|
||||||
|
move 8 from 4 to 1
|
||||||
|
move 2 from 5 to 9
|
||||||
|
move 1 from 3 to 6
|
||||||
|
move 1 from 9 to 1
|
||||||
|
move 1 from 3 to 6
|
||||||
|
move 2 from 5 to 2
|
||||||
|
move 1 from 4 to 2
|
||||||
|
move 1 from 2 to 3
|
||||||
|
move 7 from 1 to 4
|
||||||
|
move 9 from 7 to 4
|
||||||
|
move 1 from 3 to 4
|
||||||
|
move 2 from 2 to 4
|
||||||
|
move 5 from 9 to 6
|
||||||
|
move 1 from 4 to 5
|
||||||
|
move 2 from 9 to 3
|
||||||
|
move 1 from 1 to 6
|
||||||
|
move 2 from 6 to 1
|
||||||
|
move 2 from 6 to 5
|
||||||
|
move 2 from 9 to 7
|
||||||
|
move 1 from 3 to 9
|
||||||
|
move 1 from 9 to 5
|
||||||
|
move 2 from 7 to 3
|
||||||
|
move 1 from 1 to 7
|
||||||
|
move 7 from 4 to 5
|
||||||
|
move 2 from 1 to 2
|
||||||
|
move 3 from 3 to 8
|
||||||
|
move 3 from 8 to 9
|
||||||
|
move 31 from 5 to 8
|
||||||
|
move 1 from 7 to 1
|
||||||
|
move 1 from 2 to 1
|
||||||
|
move 1 from 1 to 5
|
||||||
|
move 1 from 5 to 6
|
||||||
|
move 2 from 5 to 7
|
||||||
|
move 10 from 4 to 9
|
||||||
|
move 5 from 6 to 2
|
||||||
|
move 3 from 2 to 6
|
||||||
|
move 2 from 7 to 8
|
||||||
|
move 1 from 6 to 3
|
||||||
|
move 1 from 4 to 1
|
||||||
|
move 1 from 3 to 6
|
||||||
|
move 1 from 4 to 2
|
||||||
|
move 2 from 1 to 2
|
||||||
|
move 1 from 8 to 7
|
||||||
|
move 10 from 8 to 2
|
||||||
|
move 13 from 2 to 9
|
||||||
|
move 1 from 1 to 5
|
||||||
|
move 18 from 8 to 2
|
||||||
|
move 21 from 9 to 6
|
||||||
|
move 1 from 7 to 8
|
||||||
|
move 2 from 9 to 7
|
||||||
|
move 1 from 2 to 3
|
||||||
|
move 1 from 7 to 8
|
||||||
|
move 9 from 2 to 4
|
||||||
|
move 1 from 7 to 8
|
||||||
|
move 3 from 9 to 1
|
||||||
|
move 1 from 8 to 1
|
||||||
|
move 6 from 2 to 3
|
||||||
|
move 5 from 4 to 7
|
||||||
|
move 1 from 5 to 8
|
||||||
|
move 2 from 4 to 3
|
||||||
|
move 5 from 7 to 3
|
||||||
|
move 2 from 2 to 7
|
||||||
|
move 15 from 6 to 1
|
||||||
|
move 12 from 1 to 2
|
||||||
|
move 6 from 2 to 9
|
||||||
|
move 4 from 9 to 5
|
||||||
|
move 4 from 5 to 6
|
||||||
|
move 14 from 3 to 9
|
||||||
|
move 1 from 6 to 7
|
||||||
|
move 1 from 7 to 2
|
||||||
|
move 1 from 7 to 8
|
||||||
|
move 9 from 2 to 6
|
||||||
|
move 1 from 1 to 6
|
||||||
|
move 2 from 9 to 8
|
||||||
|
move 4 from 9 to 7
|
||||||
|
move 1 from 1 to 5
|
||||||
|
move 8 from 8 to 3
|
||||||
|
move 1 from 5 to 4
|
||||||
|
move 2 from 1 to 2
|
||||||
|
move 3 from 1 to 4
|
||||||
|
move 9 from 6 to 2
|
||||||
|
move 1 from 7 to 4
|
||||||
|
move 1 from 8 to 2
|
||||||
|
move 1 from 6 to 4
|
||||||
|
move 4 from 7 to 8
|
||||||
|
move 12 from 6 to 8
|
||||||
|
move 3 from 2 to 1
|
||||||
|
move 6 from 8 to 7
|
||||||
|
move 5 from 3 to 6
|
||||||
|
move 3 from 3 to 6
|
||||||
|
move 3 from 1 to 3
|
||||||
|
move 8 from 2 to 9
|
||||||
|
move 2 from 4 to 5
|
||||||
|
move 2 from 7 to 2
|
||||||
|
move 10 from 8 to 5
|
||||||
|
move 3 from 3 to 2
|
||||||
|
move 10 from 5 to 3
|
||||||
|
move 1 from 4 to 3
|
||||||
|
move 1 from 2 to 1
|
||||||
|
move 1 from 1 to 7
|
||||||
|
move 14 from 9 to 6
|
||||||
|
move 5 from 2 to 4
|
||||||
|
move 15 from 6 to 5
|
||||||
|
move 3 from 9 to 3
|
||||||
|
move 1 from 8 to 6
|
||||||
|
move 1 from 3 to 8
|
||||||
|
move 7 from 3 to 8
|
||||||
|
move 16 from 5 to 1
|
||||||
|
move 2 from 7 to 1
|
||||||
|
move 1 from 5 to 9
|
||||||
|
move 2 from 9 to 3
|
||||||
|
move 15 from 1 to 5
|
||||||
|
move 3 from 8 to 2
|
||||||
|
move 3 from 3 to 1
|
||||||
|
move 3 from 7 to 3
|
||||||
|
move 8 from 4 to 6
|
||||||
|
move 5 from 1 to 6
|
||||||
|
move 9 from 5 to 7
|
||||||
|
move 2 from 8 to 3
|
||||||
|
move 2 from 2 to 7
|
||||||
|
move 1 from 1 to 4
|
||||||
|
move 2 from 5 to 8
|
||||||
|
move 4 from 3 to 1
|
||||||
|
move 4 from 8 to 1
|
||||||
|
move 1 from 8 to 6
|
||||||
|
move 9 from 7 to 6
|
||||||
|
move 2 from 7 to 5
|
||||||
|
move 3 from 1 to 8
|
||||||
|
move 1 from 4 to 8
|
||||||
|
move 1 from 2 to 4
|
||||||
|
move 12 from 6 to 2
|
||||||
|
move 3 from 8 to 6
|
||||||
|
move 1 from 4 to 7
|
||||||
|
move 2 from 6 to 8
|
||||||
|
move 5 from 5 to 9
|
||||||
|
move 13 from 2 to 9
|
||||||
|
move 2 from 4 to 7
|
||||||
|
move 13 from 9 to 5
|
||||||
|
move 2 from 6 to 5
|
||||||
|
move 1 from 3 to 9
|
||||||
|
move 6 from 9 to 4
|
||||||
|
move 5 from 1 to 3
|
||||||
|
move 1 from 7 to 9
|
||||||
|
move 15 from 5 to 8
|
||||||
|
move 2 from 4 to 7
|
||||||
|
move 2 from 4 to 6
|
||||||
|
move 1 from 4 to 6
|
||||||
|
move 1 from 5 to 7
|
||||||
|
move 18 from 6 to 2
|
||||||
|
move 2 from 7 to 3
|
||||||
|
move 3 from 6 to 7
|
||||||
|
move 3 from 2 to 8
|
||||||
|
move 5 from 7 to 3
|
||||||
|
move 1 from 9 to 6
|
||||||
|
move 2 from 3 to 8
|
||||||
|
move 11 from 3 to 2
|
||||||
|
move 2 from 2 to 9
|
||||||
|
move 1 from 6 to 2
|
||||||
|
move 1 from 7 to 5
|
||||||
|
move 1 from 5 to 9
|
||||||
|
move 9 from 8 to 4
|
||||||
|
move 1 from 4 to 6
|
||||||
|
move 2 from 3 to 1
|
||||||
|
move 2 from 1 to 5
|
||||||
|
move 12 from 8 to 3
|
||||||
|
move 1 from 8 to 2
|
||||||
|
move 14 from 3 to 4
|
||||||
|
move 1 from 6 to 4
|
||||||
|
move 1 from 5 to 4
|
||||||
|
move 20 from 2 to 7
|
||||||
|
move 2 from 9 to 5
|
||||||
|
move 1 from 5 to 3
|
||||||
|
move 1 from 9 to 2
|
||||||
|
move 1 from 2 to 8
|
||||||
|
move 2 from 2 to 3
|
||||||
|
move 5 from 4 to 5
|
||||||
|
move 6 from 5 to 7
|
||||||
|
move 2 from 8 to 2
|
||||||
|
move 3 from 3 to 9
|
||||||
|
move 5 from 4 to 5
|
||||||
|
move 2 from 9 to 7
|
||||||
|
move 2 from 2 to 3
|
||||||
|
move 1 from 9 to 3
|
||||||
|
move 22 from 7 to 3
|
||||||
|
move 4 from 7 to 4
|
||||||
|
move 24 from 3 to 6
|
||||||
|
move 4 from 2 to 6
|
||||||
|
move 18 from 6 to 9
|
||||||
|
move 15 from 4 to 6
|
||||||
|
move 8 from 6 to 3
|
||||||
|
move 6 from 6 to 1
|
||||||
|
move 7 from 9 to 6
|
||||||
|
move 2 from 7 to 4
|
||||||
|
move 8 from 3 to 9
|
||||||
|
move 14 from 6 to 3
|
||||||
|
move 2 from 3 to 9
|
||||||
|
move 1 from 9 to 6
|
||||||
|
move 13 from 9 to 1
|
||||||
|
move 3 from 4 to 5
|
||||||
|
move 1 from 9 to 6
|
||||||
|
move 5 from 1 to 8
|
||||||
|
move 3 from 3 to 9
|
||||||
|
move 2 from 1 to 5
|
||||||
|
move 8 from 5 to 8
|
||||||
|
move 10 from 3 to 5
|
||||||
|
move 3 from 4 to 6
|
||||||
|
move 6 from 1 to 9
|
||||||
|
move 4 from 5 to 3
|
||||||
|
move 5 from 8 to 2
|
||||||
|
move 6 from 6 to 3
|
||||||
|
move 7 from 3 to 6
|
||||||
|
move 1 from 3 to 4
|
||||||
|
move 5 from 8 to 7
|
||||||
|
move 5 from 2 to 6
|
||||||
|
move 2 from 7 to 3
|
||||||
|
move 3 from 7 to 3
|
||||||
|
move 1 from 4 to 9
|
||||||
|
move 9 from 6 to 9
|
||||||
|
move 2 from 6 to 2
|
||||||
|
move 1 from 8 to 2
|
||||||
|
move 2 from 8 to 7
|
||||||
|
move 5 from 1 to 5
|
||||||
|
move 1 from 1 to 4
|
||||||
|
move 13 from 5 to 7
|
||||||
|
move 5 from 3 to 7
|
||||||
|
move 1 from 5 to 6
|
||||||
|
move 1 from 4 to 6
|
||||||
|
move 3 from 2 to 8
|
||||||
|
move 1 from 3 to 5
|
||||||
|
move 1 from 3 to 8
|
||||||
|
move 14 from 7 to 4
|
||||||
|
move 1 from 5 to 6
|
||||||
|
move 7 from 6 to 9
|
||||||
|
move 6 from 7 to 9
|
||||||
|
move 2 from 8 to 9
|
||||||
|
move 2 from 8 to 1
|
||||||
|
move 31 from 9 to 1
|
||||||
|
move 13 from 4 to 2
|
||||||
|
move 1 from 4 to 3
|
||||||
|
move 10 from 2 to 7
|
||||||
|
move 1 from 3 to 4
|
||||||
|
move 1 from 2 to 7
|
||||||
|
move 3 from 7 to 8
|
||||||
|
move 1 from 4 to 1
|
||||||
|
move 3 from 8 to 5
|
||||||
|
move 32 from 1 to 5
|
||||||
|
move 3 from 9 to 7
|
||||||
|
move 4 from 9 to 6
|
||||||
|
move 2 from 2 to 7
|
||||||
|
move 2 from 1 to 7
|
||||||
|
move 1 from 6 to 1
|
||||||
|
move 1 from 9 to 4
|
||||||
|
move 3 from 6 to 4
|
||||||
|
move 1 from 1 to 8
|
||||||
|
move 15 from 5 to 1
|
||||||
|
move 1 from 8 to 4
|
||||||
|
move 9 from 5 to 7
|
||||||
|
move 1 from 9 to 8
|
||||||
|
move 1 from 8 to 1
|
||||||
|
move 10 from 1 to 9
|
||||||
|
move 1 from 4 to 2
|
||||||
|
move 2 from 9 to 5
|
||||||
|
move 4 from 9 to 6
|
||||||
|
move 1 from 2 to 7
|
||||||
|
move 3 from 4 to 2
|
||||||
|
move 1 from 1 to 5
|
||||||
|
move 5 from 1 to 5
|
||||||
|
move 1 from 4 to 9
|
||||||
|
move 3 from 6 to 7
|
||||||
|
move 23 from 7 to 6
|
||||||
|
move 1 from 2 to 4
|
||||||
|
move 1 from 2 to 5
|
||||||
|
move 9 from 5 to 4
|
||||||
|
move 1 from 2 to 5
|
||||||
|
move 9 from 5 to 6
|
||||||
|
move 1 from 9 to 7
|
||||||
|
move 1 from 9 to 3
|
||||||
|
move 3 from 9 to 4
|
||||||
|
move 14 from 6 to 3
|
||||||
|
move 5 from 7 to 4
|
||||||
|
move 1 from 7 to 5
|
||||||
|
move 1 from 5 to 9
|
||||||
|
move 2 from 5 to 6
|
||||||
|
move 16 from 6 to 2
|
||||||
|
move 2 from 6 to 1
|
||||||
|
move 7 from 4 to 8
|
||||||
|
move 2 from 1 to 2
|
||||||
|
move 4 from 3 to 5
|
||||||
|
move 5 from 4 to 7
|
||||||
|
move 2 from 6 to 7
|
||||||
|
move 4 from 4 to 1
|
||||||
|
move 4 from 8 to 9
|
||||||
|
move 1 from 4 to 5
|
||||||
|
move 1 from 6 to 8
|
||||||
|
move 1 from 4 to 9
|
||||||
|
move 4 from 1 to 7
|
||||||
|
move 1 from 9 to 4
|
||||||
|
move 2 from 2 to 7
|
||||||
|
move 7 from 3 to 9
|
||||||
|
move 15 from 2 to 3
|
||||||
|
move 4 from 8 to 6
|
||||||
|
move 1 from 4 to 7
|
||||||
|
move 2 from 9 to 7
|
||||||
|
move 1 from 6 to 8
|
||||||
|
move 2 from 7 to 2
|
||||||
|
move 5 from 7 to 2
|
||||||
|
move 1 from 5 to 2
|
||||||
|
move 6 from 2 to 9
|
||||||
|
move 3 from 7 to 1
|
||||||
|
move 3 from 1 to 2
|
||||||
|
move 3 from 7 to 1
|
||||||
|
move 2 from 2 to 9
|
||||||
|
move 2 from 6 to 9
|
||||||
|
move 1 from 8 to 3
|
||||||
|
move 19 from 3 to 9
|
||||||
|
move 1 from 6 to 3
|
||||||
|
move 3 from 7 to 4
|
||||||
|
move 1 from 2 to 5
|
||||||
|
move 2 from 1 to 9
|
||||||
|
move 2 from 2 to 3
|
||||||
|
move 33 from 9 to 7
|
||||||
|
move 1 from 1 to 7
|
||||||
|
move 3 from 3 to 7
|
||||||
|
move 1 from 3 to 2
|
||||||
|
move 1 from 5 to 8
|
||||||
|
move 4 from 9 to 7
|
||||||
|
move 1 from 5 to 2
|
||||||
|
move 2 from 4 to 9
|
||||||
|
move 4 from 9 to 7
|
||||||
|
move 3 from 2 to 1
|
||||||
|
move 1 from 4 to 3
|
||||||
|
move 1 from 9 to 7
|
||||||
|
move 1 from 8 to 3
|
||||||
|
move 7 from 7 to 3
|
||||||
|
move 3 from 1 to 9
|
||||||
|
move 4 from 9 to 7
|
||||||
|
move 4 from 5 to 8
|
||||||
|
move 3 from 3 to 4
|
||||||
|
move 3 from 4 to 5
|
||||||
|
move 3 from 3 to 6
|
||||||
|
move 2 from 6 to 5
|
||||||
|
move 38 from 7 to 5
|
||||||
|
move 40 from 5 to 3
|
||||||
|
move 4 from 8 to 9
|
||||||
|
move 1 from 6 to 9
|
||||||
|
move 1 from 5 to 1
|
||||||
|
move 3 from 7 to 6
|
||||||
|
move 1 from 7 to 5
|
||||||
|
move 38 from 3 to 8
|
||||||
|
move 1 from 1 to 9
|
||||||
|
move 3 from 9 to 6
|
||||||
|
move 5 from 3 to 9
|
||||||
|
move 4 from 8 to 6
|
||||||
|
move 1 from 7 to 1
|
||||||
|
move 3 from 5 to 9
|
||||||
|
move 1 from 1 to 2
|
||||||
|
move 10 from 8 to 3
|
||||||
|
move 5 from 8 to 1
|
||||||
|
move 3 from 1 to 2
|
||||||
|
move 9 from 6 to 7
|
||||||
|
move 9 from 3 to 5
|
||||||
|
move 1 from 7 to 6
|
||||||
|
move 1 from 3 to 8
|
||||||
|
move 1 from 7 to 9
|
||||||
|
move 1 from 1 to 5
|
||||||
|
move 1 from 1 to 3
|
||||||
|
move 1 from 9 to 2
|
||||||
|
move 4 from 2 to 3
|
||||||
|
move 1 from 2 to 4
|
||||||
|
move 9 from 8 to 1
|
||||||
|
move 2 from 9 to 5
|
||||||
|
move 2 from 1 to 2
|
||||||
|
move 2 from 3 to 4
|
||||||
|
move 6 from 8 to 6
|
||||||
|
move 10 from 5 to 3
|
||||||
|
move 7 from 3 to 2
|
||||||
|
move 2 from 1 to 2
|
||||||
|
move 5 from 1 to 7
|
||||||
|
move 7 from 9 to 6
|
||||||
|
move 7 from 6 to 5
|
||||||
|
move 1 from 4 to 3
|
||||||
|
move 7 from 7 to 4
|
||||||
|
move 5 from 3 to 9
|
||||||
|
move 7 from 2 to 6
|
||||||
|
move 4 from 7 to 8
|
||||||
|
move 5 from 8 to 9
|
||||||
|
move 1 from 2 to 6
|
||||||
|
move 1 from 3 to 5
|
||||||
|
move 2 from 2 to 8
|
||||||
|
move 8 from 4 to 6
|
||||||
|
move 7 from 9 to 7
|
||||||
|
move 4 from 7 to 9
|
||||||
|
move 7 from 9 to 3
|
||||||
|
move 8 from 3 to 1
|
||||||
|
move 6 from 5 to 9
|
||||||
|
move 8 from 1 to 8
|
||||||
|
move 13 from 8 to 4
|
||||||
|
move 3 from 9 to 6
|
||||||
|
move 1 from 8 to 6
|
||||||
|
move 1 from 7 to 3
|
||||||
|
move 2 from 4 to 1
|
||||||
|
move 5 from 9 to 1
|
||||||
|
move 1 from 3 to 7
|
||||||
|
move 15 from 6 to 1
|
||||||
|
move 1 from 7 to 9
|
||||||
|
move 10 from 4 to 7
|
||||||
|
move 11 from 7 to 5
|
||||||
|
move 17 from 1 to 6
|
||||||
|
move 1 from 9 to 3
|
||||||
|
move 6 from 6 to 1
|
||||||
|
move 3 from 5 to 3
|
||||||
|
move 2 from 4 to 5
|
||||||
|
move 2 from 7 to 8
|
||||||
|
move 12 from 5 to 3
|
||||||
|
move 13 from 6 to 9
|
||||||
|
move 2 from 8 to 2
|
||||||
|
move 2 from 5 to 1
|
||||||
|
move 16 from 3 to 8
|
||||||
|
move 3 from 2 to 3
|
||||||
|
move 2 from 3 to 7
|
||||||
|
move 2 from 7 to 9
|
||||||
|
move 1 from 3 to 7
|
||||||
|
move 4 from 8 to 4
|
||||||
|
move 2 from 4 to 8
|
||||||
|
move 5 from 1 to 5
|
||||||
|
move 2 from 4 to 7
|
||||||
|
move 6 from 6 to 8
|
||||||
|
move 2 from 8 to 5
|
||||||
|
move 2 from 1 to 4
|
||||||
|
move 5 from 8 to 7
|
||||||
|
move 5 from 6 to 3
|
||||||
|
move 6 from 9 to 8
|
||||||
|
move 2 from 9 to 2
|
||||||
|
move 1 from 1 to 7
|
||||||
|
move 4 from 5 to 3
|
||||||
|
move 2 from 2 to 3
|
||||||
|
move 1 from 4 to 9
|
||||||
|
move 10 from 3 to 6
|
||||||
|
move 1 from 3 to 7
|
||||||
|
move 10 from 7 to 2
|
||||||
|
move 2 from 5 to 3
|
||||||
|
move 1 from 4 to 2
|
||||||
|
move 2 from 6 to 8
|
||||||
|
move 3 from 6 to 5
|
||||||
|
move 1 from 6 to 1
|
||||||
|
move 7 from 2 to 3
|
||||||
|
move 6 from 8 to 7
|
||||||
|
move 4 from 6 to 3
|
||||||
|
move 14 from 8 to 6
|
||||||
|
move 11 from 6 to 8
|
||||||
|
move 1 from 1 to 4
|
||||||
|
move 6 from 7 to 2
|
||||||
|
move 3 from 5 to 8
|
||||||
|
move 4 from 1 to 7
|
||||||
|
move 1 from 2 to 8
|
||||||
|
move 1 from 2 to 6
|
||||||
|
move 1 from 3 to 4
|
||||||
|
move 1 from 5 to 6
|
||||||
|
move 7 from 8 to 6
|
||||||
|
move 9 from 3 to 2
|
||||||
|
move 1 from 8 to 5
|
||||||
@@ -0,0 +1,53 @@
|
|||||||
|
stacks = None
|
||||||
|
|
||||||
|
def initStacks(s):
|
||||||
|
global stacks
|
||||||
|
stacks = []
|
||||||
|
for i in range(s):
|
||||||
|
stacks.append([])
|
||||||
|
|
||||||
|
def reverseStacks():
|
||||||
|
global stacks
|
||||||
|
newStacks = []
|
||||||
|
for stack in stacks:
|
||||||
|
rstack = list(reversed(stack))
|
||||||
|
newStacks.append(rstack)
|
||||||
|
stacks = newStacks
|
||||||
|
|
||||||
|
def move(amount, source, dest):
|
||||||
|
for i in range(amount):
|
||||||
|
try:
|
||||||
|
srcstack = stacks[source-1]
|
||||||
|
dststack = stacks[dest-1]
|
||||||
|
m = srcstack.pop()
|
||||||
|
dststack.append(m)
|
||||||
|
except IndexError:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def printAnswer():
|
||||||
|
answer = ""
|
||||||
|
for stack in stacks:
|
||||||
|
answer += stack[-1]
|
||||||
|
print(answer)
|
||||||
|
|
||||||
|
with open("input.txt", "r") as f:
|
||||||
|
line = "."
|
||||||
|
while line != "":
|
||||||
|
line = f.readline().strip()
|
||||||
|
s = int((len(line)-3)/4 + 1)
|
||||||
|
if stacks is None:
|
||||||
|
initStacks(s)
|
||||||
|
for i in range(s):
|
||||||
|
char = line[1+i*4]
|
||||||
|
if char != " ":
|
||||||
|
stacks[i].append(char)
|
||||||
|
reverseStacks()
|
||||||
|
print(stacks)
|
||||||
|
for line in f.readlines():
|
||||||
|
data = line.strip().split(" ")
|
||||||
|
amount = int(data[1])
|
||||||
|
source = int(data[3])
|
||||||
|
dest = int(data[5])
|
||||||
|
move(amount, source, dest)
|
||||||
|
print(stacks)
|
||||||
|
printAnswer()
|
||||||
@@ -0,0 +1,54 @@
|
|||||||
|
stacks = None
|
||||||
|
|
||||||
|
def initStacks(s):
|
||||||
|
global stacks
|
||||||
|
stacks = []
|
||||||
|
for i in range(s):
|
||||||
|
stacks.append([])
|
||||||
|
|
||||||
|
def reverseStacks():
|
||||||
|
global stacks
|
||||||
|
newStacks = []
|
||||||
|
for stack in stacks:
|
||||||
|
rstack = list(reversed(stack))
|
||||||
|
newStacks.append(rstack)
|
||||||
|
stacks = newStacks
|
||||||
|
|
||||||
|
def move(amount, source, dest):
|
||||||
|
# Get substack of items to move
|
||||||
|
substack = stacks[source-1][-amount:]
|
||||||
|
|
||||||
|
# Remove the items from source
|
||||||
|
stacks[source-1] = stacks[source-1][:-amount]
|
||||||
|
|
||||||
|
# Get destination stack and place items
|
||||||
|
dststack = stacks[dest-1]
|
||||||
|
stacks[dest-1] = dststack + substack
|
||||||
|
|
||||||
|
def printAnswer():
|
||||||
|
answer = ""
|
||||||
|
for stack in stacks:
|
||||||
|
answer += stack[-1]
|
||||||
|
print(answer)
|
||||||
|
|
||||||
|
with open("input.txt", "r") as f:
|
||||||
|
line = "."
|
||||||
|
while line != "":
|
||||||
|
line = f.readline().strip()
|
||||||
|
s = int((len(line)-3)/4 + 1)
|
||||||
|
if stacks is None:
|
||||||
|
initStacks(s)
|
||||||
|
for i in range(s):
|
||||||
|
char = line[1+i*4]
|
||||||
|
if char != " ":
|
||||||
|
stacks[i].append(char)
|
||||||
|
reverseStacks()
|
||||||
|
print(stacks)
|
||||||
|
for line in f.readlines():
|
||||||
|
data = line.strip().split(" ")
|
||||||
|
amount = int(data[1])
|
||||||
|
source = int(data[3])
|
||||||
|
dest = int(data[5])
|
||||||
|
move(amount, source, dest)
|
||||||
|
print(stacks)
|
||||||
|
printAnswer()
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
dcbcsbblhhgdgssmcmqccdwdvwdvvcfvcfvvpvmmwccdqddshhdppcfpfbbfggfjfvvhzhmmsqswsttcgtctggjllhnnqbnnnldlglplvlbvbzztpzzvpphshwwfhhgssvgsvvpfvfzznbznndqqtsqttnvtvqqqrgqrrgzzlqzzbvzbzmzffnbfnbffcggdcggqhqpqzpqzqbbqvbqbhhtzhhrrrprlrclrcrssqspqpbblggfvvbpvbbssvttsztzpzjjwffnpnfnrrqhqgqrrzqzbzzdpdjpplpclpptltztjtztqthtmmmpsmmpjpqpvvshhsfshhrvrdvdggwssdbbzbttlmlmpprmrmlrrmqrqsshjhjljzjnjllbbvjvnnppqbppqqfffrbfbdfbbqppmtppfttqddtzzwbblqqbddgwgqwqzwwpzwzjjbccdjdwwrggrmrtmrtmrrvpptwwcdcwwsdshhjjhwjwqjwwqsshrrbsblssphspsjpssnsmsqswqwfwjwccdvccrqqnsqnsnwsnsmnmccvcqqfjjfljfljfjgjffjvffvjvhjhfhrfrlrrtpphbhwbbvmmnpndnlljdjfjsffvccnhchwhddrccljllmnnhmnmpnnhtnthnhvnhnwnqqjmmgzzvssphhjljbjwjbwwdnwwdvvzpvvhccvjjlclrrppgjgsshghvvzjvvpvvbjjqhjqqfcqffchcmmvdvtddftdtppfnppcnpnznwwpdpjpnpttlbbmmqfqmffqnfnbffbrbgbwggsmsbbfgbbfbzbtzbbvmmdlmlrlnlwwbswsjjpjhhwqwzqznqzqvvwccwvwwcbbpvvwcvcvzzhzchzccbnccjlljsjbjdbbvqbvvfdfgdfggzfzlzmzrznnqsnncmnnljjtcjcfftrthtrhrgrvvjggzpggrcrpcppggdfggpmmwnmnlmlglvvmjvvddsmsjsnjssqffffctczcjzjjlbbhpbbfdbdzbbsjbjnjbbqqjbqjbjjhwhssmvsschhhwppbjppllprpjrppdpfpgpjptjtptplpnptnptpjjmcmnnnhnjhjlhjlhjlhlwwhwmwjjbhhlfffrbbgvvqwvwswtstmmmfpmfpffmcfcrrqsqzqjjjnpnnztnznddlwdldsdbssstzstswwjtttmmwmsmwssvswszsjzsjjsffmccmfccqzzvpmbbbsqffgzdqbjtzhlqdzhlpwghlstcrcrffrnbwjnqgmbmpgttfmsswdqctlrpdnlsgnlldvbfpwtcptvbwftzcnbbscrrcpnwtmllcvsrmwzzlsdmfctdcwsqdlsnzgfpmzrnswhbqjhstztzzmzpcttsgsggnlhvjmcbbrhgqhsfmglpcbdvmmmnfbtbfrqbpcmttjtnwvznbshwrmznnsvpjqjntlzspljnbwtjcqztsfcqlrggrpzjgjsvqqcrmrjmzwdsshqfhbtfmlwmfvtbcgdmjgtcnphfmfmjlbjzrvjslccftnwcchgdwjnlthlwgldjwqwgdptdjdmzdrrzcdpbfrtdgcspjtqdqvzswwdwrhggdrqjjgwwrbwhhlrpqmszvlvjfqptncjlscvzbgzgmsttlbhbfrctnsphjcrcwlhcgrcrsjbrjvptgfbjgjrvtzmnhpzcgptbmrgvstsltnctjphsjdwpdqblfswzfhgjbpfrptlmhfwcpdlzqccgtdvbzhwngrhlqftmlhjprscflgzpflvvpfsjmlnmbzsrlrshvnsqrhhlqdlzhrcbjjjfrbqcdspwsmltcrtlbdnbnvhbbwgqdcncsztbfwztzdbqgcrnvndmpstpncbwvtctzdpmcpvrgqvjjztfwpvjtdqlvcvdpfzgcghsmbcwtzztmqwdpsprgsmfhphqsqmflrjdqzjscgzlnvcwcrlmpdscnhqpqjfdbdftqgttwntdbpnshdwnmwsrslfgnzlnwwwqgdbfnthhqtvbzsqgzjhhghtmvvfhlmlpbghnsvlttzsjlgndhdqmqqfdlqnbfscsnnqzcdwzdlqcnstcbsffghftqvwrsshgwmlnprhdnnwslwfwtmtfzdjwpmlvvdhjvdwrhvdsmpgrdpnqsjpqmhttrmdwllrmnbznwjwvvpjnnbnfzbdnhjbqqrnzgdqbspbqtwdpgsbwpzfdbpvzfjpsgmztnzrpvvhwlfscfvfpfblvplgdbhvjjpdjtnwrmvpjsphvglpsntvwtqwqvprcgwjltddpjngvmzfzhmqnnwglbzsbrcztpplpsmgmcfgzgpbtgsjrfvdzzcsthznvdpbwvdlcgdhncsjdvpcbbmtrqczctjljdfghsrvrsfjglqqhjttfdhqdqwhzhqrggsjwlldrntwmmbftgqjhpvvctpbtgltnttlhdqbsbwcqmctwlsnhmhncpmnzsllmjhcgnlfgvpcqrwzvsstgwbvjtnrlbblclzdrcwddrwnptqzgwdwtgrfwffpzjmwbqfmmrcfzfzjbwsslbhggtwtcrlhffzgfgrtljgnznnlgzwfmtwwqzhlthvpfclrtmrqfzrggbctzfsmjhrtwzpfrnhwwprnbwmvwvmvnzqpggmzgslctqbqdtvhgzjwzsnblqzmcpnpwllzhvzzmfqzfjlrsrcnjzqdzbpjftljtzvvmrjszvqllnhhgnrnqttnwlvllphjtnmlwqhcvmbsvnwtcdmhsmhdcwqwtvggcqfpdsrsscmhcvfzvdnffrfhdfmgbsghdbpwdwrdmlvsnzwcfchcqvccszdqrbnfvrpbftcwnjmczwgqzmtlmrthlhtjpmchltcmcqwgfgshtvtpmcmpbmlnjmhnpdsljjmjzddnlgtnjqztzsqqlhtqcscjvjncjvfcvsgjhqgzrmtjjcgvvmwswffmlcvlhqhbvrldrvbrfmmqcnqmfzlsghvclrdbsvcbqspgbzmjnlrdhvncnbcfmdlqrssggsmlwwglcjjzmcdwcnrgvvmgjcfbzlncmgqtllgldbdztbtfcjczqtjjlnpqmrgtjsmrbscvqlgqghfbgwccgwrjrzrsbbrqnjcqhllsqmrjtzmjnndwwmdjfhspjpgdcjjpdvwrsgjcfnpllnnnccvnfvqbpddgvbgbsbczmbzrbclczljdmbhpgmhwlqvnjzjwzzfjmsmcchjrqrtmhwlgjsptctlbtdnrqgntcvngcrqdqptfmhbvlhrqchdtwdwbrbqwtswzcrrfndldwmjbczppzrnncvvqsmpvvqcnsvhprhlmrhnjbwdvrbbwwdtmzrqttschrztgjcshlhfbmhmwrrmwgmfshpdhjwgdmcfdvqrmmwgmzbrlgbfltvlzmvqbgvhppdzglqbdlrhjnntnfvtmzjqccmqdbpjqphfggmjqdrndhclcfvqsjrsbcgdhcrbjsdjmwrzvpfpcjwjfdltztfzgmlzqzmztpvbflppgnhdzssznngfjggczdtdmcczjzfsnflpwqrbggmqdbbprfptzcdqvhrvszzjqqjlrlrdpwcnzhvgfhpcdbbgsfmtnszwbhwcdwdghqqctwqlqrlqbdwfvjnhcpmzchqfrwzhzgslzhncmrlrpzcjczvzwcvwcldbmscfqnnqnwwvrpfvjswqmhgmhgnmfzpsjmdhbpvsftccttvdpcdzcnzswqmtrwbctpbgmzrvrrshjjgdqsqrwfpcmsbvqhccvjqpztlttwjjdtbmwslschpqjjllvjcjwtmrtvvwdzglstvtpndmmzcpgqsvqgfdtqdjdctsbsbmqzqhtczhgqgwbdlrhjrwcmtbzfndsbnpnhmsdhtghwwzvtdwtscdnwzmrjrsrjvvbvrpbszchwbltrjbcqmlhqnzcfbhjqnsjghlnlbsrgzrrzfvslwpbqmgfswhgjdsdfrzsdhvdqvqfbcbvmbfhjfpzwlbspcbnvrgpfnmjbwbsnpqpqhjpsnwrlcmfhpdmjbvpnctcfqgdmwzblsnr
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
from collections import deque
|
||||||
|
|
||||||
|
LEN = 4
|
||||||
|
dups = deque(maxlen=LEN)
|
||||||
|
|
||||||
|
def hasdups():
|
||||||
|
for x in dups:
|
||||||
|
if dups.count(x) > 1:
|
||||||
|
return True
|
||||||
|
return False
|
||||||
|
|
||||||
|
with open("input.txt", "r") as f:
|
||||||
|
line = f.readline().strip()
|
||||||
|
for (index, char) in enumerate(line):
|
||||||
|
dups.append(char)
|
||||||
|
print(char)
|
||||||
|
print(dups)
|
||||||
|
if len(dups) >= LEN and not hasdups():
|
||||||
|
print(index+1)
|
||||||
|
break
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
from collections import deque
|
||||||
|
|
||||||
|
LEN = 14
|
||||||
|
dups = deque(maxlen=LEN)
|
||||||
|
|
||||||
|
def hasdups():
|
||||||
|
for x in dups:
|
||||||
|
if dups.count(x) > 1:
|
||||||
|
return True
|
||||||
|
return False
|
||||||
|
|
||||||
|
with open("input.txt", "r") as f:
|
||||||
|
line = f.readline().strip()
|
||||||
|
for (index, char) in enumerate(line):
|
||||||
|
dups.append(char)
|
||||||
|
print(char)
|
||||||
|
print(dups)
|
||||||
|
if len(dups) >= LEN and not hasdups():
|
||||||
|
print(index+1)
|
||||||
|
break
|
||||||
+980
@@ -0,0 +1,980 @@
|
|||||||
|
$ cd /
|
||||||
|
$ ls
|
||||||
|
dir csjncqmr
|
||||||
|
dir fnfjhvsp
|
||||||
|
dir mhfrct
|
||||||
|
dir pgmgbfcl
|
||||||
|
dir qcf
|
||||||
|
dir wrsjr
|
||||||
|
$ cd csjncqmr
|
||||||
|
$ ls
|
||||||
|
8827 vdrdm.pfj
|
||||||
|
$ cd ..
|
||||||
|
$ cd fnfjhvsp
|
||||||
|
$ ls
|
||||||
|
dir csjncqmr
|
||||||
|
dir czpmg
|
||||||
|
162385 dcgph
|
||||||
|
7135 hff.cdt
|
||||||
|
$ cd csjncqmr
|
||||||
|
$ ls
|
||||||
|
121543 gzjdsn.wlc
|
||||||
|
dir ljq
|
||||||
|
$ cd ljq
|
||||||
|
$ ls
|
||||||
|
dir cwlrlvf
|
||||||
|
dir jpqjhhpg
|
||||||
|
$ cd cwlrlvf
|
||||||
|
$ ls
|
||||||
|
151219 dcgph
|
||||||
|
$ cd ..
|
||||||
|
$ cd jpqjhhpg
|
||||||
|
$ ls
|
||||||
|
188355 dcgph
|
||||||
|
38458 gfgl.hlg
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd czpmg
|
||||||
|
$ ls
|
||||||
|
168232 dcgph
|
||||||
|
143031 gzjdsn.wlc
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd mhfrct
|
||||||
|
$ ls
|
||||||
|
dir clm
|
||||||
|
66710 dcgph
|
||||||
|
232576 mtfhpcnj
|
||||||
|
$ cd clm
|
||||||
|
$ ls
|
||||||
|
dir pgmgbfcl
|
||||||
|
$ cd pgmgbfcl
|
||||||
|
$ ls
|
||||||
|
110296 qbfhj.tmn
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd pgmgbfcl
|
||||||
|
$ ls
|
||||||
|
163613 cgchl
|
||||||
|
dir nnlr
|
||||||
|
123977 rrwbnmlh.jtt
|
||||||
|
dir tjhzggs
|
||||||
|
dir wfl
|
||||||
|
252837 wpgrl
|
||||||
|
$ cd nnlr
|
||||||
|
$ ls
|
||||||
|
103051 flp
|
||||||
|
dir qrhlzd
|
||||||
|
dir rcgmhz
|
||||||
|
dir snwrlr
|
||||||
|
dir vgj
|
||||||
|
dir znbzt
|
||||||
|
$ cd qrhlzd
|
||||||
|
$ ls
|
||||||
|
dir crg
|
||||||
|
246915 dcgph
|
||||||
|
264791 fcphzfb.fmb
|
||||||
|
299291 flp
|
||||||
|
dir mjqsg
|
||||||
|
297202 pgmgbfcl
|
||||||
|
dir sbbzgbz
|
||||||
|
dir wnsnssbg
|
||||||
|
$ cd crg
|
||||||
|
$ ls
|
||||||
|
55556 flp
|
||||||
|
185529 jswdvn
|
||||||
|
$ cd ..
|
||||||
|
$ cd mjqsg
|
||||||
|
$ ls
|
||||||
|
dir fnfjhvsp
|
||||||
|
dir jfbzjz
|
||||||
|
dir rwg
|
||||||
|
$ cd fnfjhvsp
|
||||||
|
$ ls
|
||||||
|
24945 cctwbs
|
||||||
|
170960 csjncqmr
|
||||||
|
316168 ljffgvvz.zld
|
||||||
|
187325 pgmgbfcl.fzv
|
||||||
|
74133 qbfhj.tmn
|
||||||
|
dir tjhzggs
|
||||||
|
dir vjmgmdz
|
||||||
|
$ cd tjhzggs
|
||||||
|
$ ls
|
||||||
|
287777 csjncqmr.nbd
|
||||||
|
$ cd ..
|
||||||
|
$ cd vjmgmdz
|
||||||
|
$ ls
|
||||||
|
dir vgpb
|
||||||
|
$ cd vgpb
|
||||||
|
$ ls
|
||||||
|
202578 bbbg.hlr
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd jfbzjz
|
||||||
|
$ ls
|
||||||
|
207736 tjhzggs.cql
|
||||||
|
$ cd ..
|
||||||
|
$ cd rwg
|
||||||
|
$ ls
|
||||||
|
184997 csjncqmr
|
||||||
|
4378 dcgph
|
||||||
|
55767 qnc.wvv
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd sbbzgbz
|
||||||
|
$ ls
|
||||||
|
321376 csjncqmr
|
||||||
|
317438 flp
|
||||||
|
9263 hrs
|
||||||
|
$ cd ..
|
||||||
|
$ cd wnsnssbg
|
||||||
|
$ ls
|
||||||
|
dir jdjv
|
||||||
|
$ cd jdjv
|
||||||
|
$ ls
|
||||||
|
153354 gzjdsn.wlc
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd rcgmhz
|
||||||
|
$ ls
|
||||||
|
dir tjhzggs
|
||||||
|
$ cd tjhzggs
|
||||||
|
$ ls
|
||||||
|
299192 jfbzjz.ttg
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd snwrlr
|
||||||
|
$ ls
|
||||||
|
30314 csjncqmr.jvn
|
||||||
|
dir hcf
|
||||||
|
$ cd hcf
|
||||||
|
$ ls
|
||||||
|
81979 jfbzjz.pfz
|
||||||
|
179459 ngh
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd vgj
|
||||||
|
$ ls
|
||||||
|
278579 jbn.rgz
|
||||||
|
dir jzj
|
||||||
|
dir lnbhh
|
||||||
|
dir pgmgbfcl
|
||||||
|
dir qgvspcpm
|
||||||
|
$ cd jzj
|
||||||
|
$ ls
|
||||||
|
295808 hrs
|
||||||
|
220437 vqbcl
|
||||||
|
$ cd ..
|
||||||
|
$ cd lnbhh
|
||||||
|
$ ls
|
||||||
|
212203 nfmhd.hbq
|
||||||
|
233853 qgz.mcd
|
||||||
|
$ cd ..
|
||||||
|
$ cd pgmgbfcl
|
||||||
|
$ ls
|
||||||
|
dir mmbdpj
|
||||||
|
138462 mwcdrpm.spr
|
||||||
|
288430 pgmgbfcl.pwd
|
||||||
|
132880 rdmwtn.qjj
|
||||||
|
41775 rfqb.djh
|
||||||
|
dir rnd
|
||||||
|
69597 thnbf
|
||||||
|
$ cd mmbdpj
|
||||||
|
$ ls
|
||||||
|
158542 hrs
|
||||||
|
306559 tjhzggs
|
||||||
|
$ cd ..
|
||||||
|
$ cd rnd
|
||||||
|
$ ls
|
||||||
|
223745 fnfjhvsp.hgt
|
||||||
|
138236 gdmtnffs.cdm
|
||||||
|
dir gmzb
|
||||||
|
dir hvl
|
||||||
|
266178 mzwmjl.rqq
|
||||||
|
dir njpq
|
||||||
|
33906 qbfhj.tmn
|
||||||
|
dir tjhzggs
|
||||||
|
$ cd gmzb
|
||||||
|
$ ls
|
||||||
|
186579 nsbfn.lsd
|
||||||
|
$ cd ..
|
||||||
|
$ cd hvl
|
||||||
|
$ ls
|
||||||
|
312925 csjncqmr.sbc
|
||||||
|
75264 gqp
|
||||||
|
81003 gzjdsn.wlc
|
||||||
|
$ cd ..
|
||||||
|
$ cd njpq
|
||||||
|
$ ls
|
||||||
|
188139 lbnrr.pwd
|
||||||
|
213545 qgqddvwf.hfl
|
||||||
|
$ cd ..
|
||||||
|
$ cd tjhzggs
|
||||||
|
$ ls
|
||||||
|
dir dlwvc
|
||||||
|
191782 jfbzjz
|
||||||
|
dir tbldpln
|
||||||
|
$ cd dlwvc
|
||||||
|
$ ls
|
||||||
|
75927 jvhjtnft
|
||||||
|
260563 qbfhj.tmn
|
||||||
|
dir vlg
|
||||||
|
$ cd vlg
|
||||||
|
$ ls
|
||||||
|
187660 hgm
|
||||||
|
dir rhr
|
||||||
|
273019 tdgr.crr
|
||||||
|
$ cd rhr
|
||||||
|
$ ls
|
||||||
|
286129 wnn.jgn
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd tbldpln
|
||||||
|
$ ls
|
||||||
|
173546 pdfrsq.pnb
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd qgvspcpm
|
||||||
|
$ ls
|
||||||
|
dir dhrbsl
|
||||||
|
286566 fldhvbq
|
||||||
|
209725 gzjdsn.wlc
|
||||||
|
148148 nspz.gwc
|
||||||
|
111003 tjhzggs
|
||||||
|
$ cd dhrbsl
|
||||||
|
$ ls
|
||||||
|
58390 gzjdsn.wlc
|
||||||
|
150545 hrs
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd znbzt
|
||||||
|
$ ls
|
||||||
|
211651 gwhb.mfz
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd tjhzggs
|
||||||
|
$ ls
|
||||||
|
dir hgr
|
||||||
|
229076 jfbzjz.dfh
|
||||||
|
dir ptfcbwwv
|
||||||
|
51893 qbfhj.tmn
|
||||||
|
97712 qgtvfh.hvs
|
||||||
|
$ cd hgr
|
||||||
|
$ ls
|
||||||
|
dir hwvgjdq
|
||||||
|
dir vwvbt
|
||||||
|
$ cd hwvgjdq
|
||||||
|
$ ls
|
||||||
|
dir pgmgbfcl
|
||||||
|
$ cd pgmgbfcl
|
||||||
|
$ ls
|
||||||
|
dir qgs
|
||||||
|
$ cd qgs
|
||||||
|
$ ls
|
||||||
|
188108 hrs
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd vwvbt
|
||||||
|
$ ls
|
||||||
|
169212 tfrm.gjb
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ptfcbwwv
|
||||||
|
$ ls
|
||||||
|
67829 lpszzl
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd wfl
|
||||||
|
$ ls
|
||||||
|
dir hfcm
|
||||||
|
$ cd hfcm
|
||||||
|
$ ls
|
||||||
|
73872 flp
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd qcf
|
||||||
|
$ ls
|
||||||
|
dir ctjw
|
||||||
|
177175 dwzmnpr
|
||||||
|
dir fqldn
|
||||||
|
dir hmjnnjjj
|
||||||
|
301788 hrs
|
||||||
|
dir lgmld
|
||||||
|
dir pgmgbfcl
|
||||||
|
76771 qzsbm.zdb
|
||||||
|
dir scbgn
|
||||||
|
234764 vhrlgcf
|
||||||
|
$ cd ctjw
|
||||||
|
$ ls
|
||||||
|
139505 mflt.hnr
|
||||||
|
$ cd ..
|
||||||
|
$ cd fqldn
|
||||||
|
$ ls
|
||||||
|
dir bgq
|
||||||
|
7260 flgrh.tmt
|
||||||
|
dir fnfjhvsp
|
||||||
|
dir fnr
|
||||||
|
dir gsnqjmw
|
||||||
|
10529 gzjdsn.wlc
|
||||||
|
22877 hrs
|
||||||
|
dir hzbrgrfq
|
||||||
|
dir snmbwrzn
|
||||||
|
dir tjhzggs
|
||||||
|
6773 tzhsjsc
|
||||||
|
$ cd bgq
|
||||||
|
$ ls
|
||||||
|
40780 gzjdsn.wlc
|
||||||
|
233301 mnzdbpc
|
||||||
|
dir mpdjgbgf
|
||||||
|
303076 qbfhj.tmn
|
||||||
|
dir qjs
|
||||||
|
189723 sbzn.dtj
|
||||||
|
dir vhnqcrd
|
||||||
|
$ cd mpdjgbgf
|
||||||
|
$ ls
|
||||||
|
227105 dcgph
|
||||||
|
298219 dprcwts.vdt
|
||||||
|
$ cd ..
|
||||||
|
$ cd qjs
|
||||||
|
$ ls
|
||||||
|
214072 pgmgbfcl
|
||||||
|
264897 qbfhj.tmn
|
||||||
|
$ cd ..
|
||||||
|
$ cd vhnqcrd
|
||||||
|
$ ls
|
||||||
|
178950 fnfjhvsp
|
||||||
|
180561 pgmgbfcl.mst
|
||||||
|
312980 pgmgbfcl.twp
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd fnfjhvsp
|
||||||
|
$ ls
|
||||||
|
141191 fnfjhvsp.bng
|
||||||
|
81709 pgmgbfcl.sfw
|
||||||
|
$ cd ..
|
||||||
|
$ cd fnr
|
||||||
|
$ ls
|
||||||
|
316638 flp
|
||||||
|
dir fnfjhvsp
|
||||||
|
dir fqdnn
|
||||||
|
267054 gdnln
|
||||||
|
dir hfcrzwvm
|
||||||
|
dir rdljd
|
||||||
|
319112 wpcmfbr.zgp
|
||||||
|
$ cd fnfjhvsp
|
||||||
|
$ ls
|
||||||
|
115581 hrs
|
||||||
|
dir jfbzjz
|
||||||
|
$ cd jfbzjz
|
||||||
|
$ ls
|
||||||
|
170398 qbfhj.tmn
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd fqdnn
|
||||||
|
$ ls
|
||||||
|
dir cfg
|
||||||
|
dir jbjltw
|
||||||
|
$ cd cfg
|
||||||
|
$ ls
|
||||||
|
dir qljztr
|
||||||
|
dir tnsw
|
||||||
|
dir zhnqp
|
||||||
|
$ cd qljztr
|
||||||
|
$ ls
|
||||||
|
64638 bnlsrfb
|
||||||
|
63440 csjncqmr
|
||||||
|
206111 gzjdsn.wlc
|
||||||
|
207890 hrs
|
||||||
|
265995 pgmgbfcl.zcw
|
||||||
|
$ cd ..
|
||||||
|
$ cd tnsw
|
||||||
|
$ ls
|
||||||
|
85166 lsflqzmc
|
||||||
|
$ cd ..
|
||||||
|
$ cd zhnqp
|
||||||
|
$ ls
|
||||||
|
217666 csjncqmr.cch
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd jbjltw
|
||||||
|
$ ls
|
||||||
|
88043 dcgph
|
||||||
|
238483 hrs
|
||||||
|
189734 jnvwjs
|
||||||
|
243936 pgmgbfcl.wsr
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd hfcrzwvm
|
||||||
|
$ ls
|
||||||
|
dir vwc
|
||||||
|
$ cd vwc
|
||||||
|
$ ls
|
||||||
|
82566 shc.qhj
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd rdljd
|
||||||
|
$ ls
|
||||||
|
68011 ptw.bgd
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd gsnqjmw
|
||||||
|
$ ls
|
||||||
|
236818 gzjdsn.wlc
|
||||||
|
$ cd ..
|
||||||
|
$ cd hzbrgrfq
|
||||||
|
$ ls
|
||||||
|
240924 dcgph
|
||||||
|
dir dcjsv
|
||||||
|
dir dsrzdjfm
|
||||||
|
dir fnfjhvsp
|
||||||
|
dir hnzm
|
||||||
|
dir mqb
|
||||||
|
94014 smpnth.bbm
|
||||||
|
$ cd dcjsv
|
||||||
|
$ ls
|
||||||
|
316708 cmddvb
|
||||||
|
dir fnfjhvsp
|
||||||
|
$ cd fnfjhvsp
|
||||||
|
$ ls
|
||||||
|
dir fnfjhvsp
|
||||||
|
$ cd fnfjhvsp
|
||||||
|
$ ls
|
||||||
|
dir jqlcvds
|
||||||
|
$ cd jqlcvds
|
||||||
|
$ ls
|
||||||
|
51018 dqfbq.ggm
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd dsrzdjfm
|
||||||
|
$ ls
|
||||||
|
262938 csjncqmr.dmm
|
||||||
|
125129 mwcnlvhv.szp
|
||||||
|
150590 qbfhj.tmn
|
||||||
|
dir rrrzpsn
|
||||||
|
196430 vbdgb
|
||||||
|
dir vsfbwfdl
|
||||||
|
$ cd rrrzpsn
|
||||||
|
$ ls
|
||||||
|
dir tjhzggs
|
||||||
|
281655 tjhzggs.btg
|
||||||
|
dir tsjzf
|
||||||
|
$ cd tjhzggs
|
||||||
|
$ ls
|
||||||
|
291402 gbl
|
||||||
|
dir hctmr
|
||||||
|
dir hqdmpwl
|
||||||
|
225075 hrs
|
||||||
|
dir jfbzjz
|
||||||
|
51032 tjhzggs.qzr
|
||||||
|
$ cd hctmr
|
||||||
|
$ ls
|
||||||
|
113430 qbfhj.tmn
|
||||||
|
$ cd ..
|
||||||
|
$ cd hqdmpwl
|
||||||
|
$ ls
|
||||||
|
67634 tjhzggs
|
||||||
|
$ cd ..
|
||||||
|
$ cd jfbzjz
|
||||||
|
$ ls
|
||||||
|
193552 nmvl.tzj
|
||||||
|
197076 pgmgbfcl
|
||||||
|
11047 tjhzggs
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd tsjzf
|
||||||
|
$ ls
|
||||||
|
36205 jwmdtdjv
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd vsfbwfdl
|
||||||
|
$ ls
|
||||||
|
288660 flp
|
||||||
|
185921 jfbzjz
|
||||||
|
dir mqmvtddt
|
||||||
|
124423 nfbfq.dln
|
||||||
|
dir wzbc
|
||||||
|
$ cd mqmvtddt
|
||||||
|
$ ls
|
||||||
|
85529 bhjp.vvj
|
||||||
|
$ cd ..
|
||||||
|
$ cd wzbc
|
||||||
|
$ ls
|
||||||
|
77316 flp
|
||||||
|
271730 pgmgbfcl.lcd
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd fnfjhvsp
|
||||||
|
$ ls
|
||||||
|
47666 mpwtvwd.fwr
|
||||||
|
$ cd ..
|
||||||
|
$ cd hnzm
|
||||||
|
$ ls
|
||||||
|
157672 flp
|
||||||
|
294957 gzjdsn.wlc
|
||||||
|
297187 lbssg
|
||||||
|
24223 qbfhj.tmn
|
||||||
|
dir rdnqrgt
|
||||||
|
177449 tld.tsd
|
||||||
|
$ cd rdnqrgt
|
||||||
|
$ ls
|
||||||
|
dir nltjzrrr
|
||||||
|
217347 vrb.gcd
|
||||||
|
$ cd nltjzrrr
|
||||||
|
$ ls
|
||||||
|
dir zzd
|
||||||
|
$ cd zzd
|
||||||
|
$ ls
|
||||||
|
47464 flp
|
||||||
|
dir fnfjhvsp
|
||||||
|
$ cd fnfjhvsp
|
||||||
|
$ ls
|
||||||
|
89424 qtzfddz.btd
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd mqb
|
||||||
|
$ ls
|
||||||
|
105537 tjhzggs.wns
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd snmbwrzn
|
||||||
|
$ ls
|
||||||
|
dir mqt
|
||||||
|
dir nsdrn
|
||||||
|
dir rjn
|
||||||
|
$ cd mqt
|
||||||
|
$ ls
|
||||||
|
233842 pgmgbfcl
|
||||||
|
$ cd ..
|
||||||
|
$ cd nsdrn
|
||||||
|
$ ls
|
||||||
|
67018 dcgph
|
||||||
|
17296 flp
|
||||||
|
274166 gzjdsn.wlc
|
||||||
|
186308 jfbzjz
|
||||||
|
280195 lvbsrvwm.zlq
|
||||||
|
dir pjv
|
||||||
|
dir thlp
|
||||||
|
$ cd pjv
|
||||||
|
$ ls
|
||||||
|
123190 rfbj.gmq
|
||||||
|
$ cd ..
|
||||||
|
$ cd thlp
|
||||||
|
$ ls
|
||||||
|
141308 flp
|
||||||
|
188164 jfbzjz
|
||||||
|
299013 pgmgbfcl
|
||||||
|
171259 qbfhj.tmn
|
||||||
|
dir qsljb
|
||||||
|
$ cd qsljb
|
||||||
|
$ ls
|
||||||
|
291980 glcnlj.swh
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd rjn
|
||||||
|
$ ls
|
||||||
|
181047 fqmhpg.hpl
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd tjhzggs
|
||||||
|
$ ls
|
||||||
|
dir csjncqmr
|
||||||
|
274202 fhfjvdjc.swt
|
||||||
|
dir fnfjhvsp
|
||||||
|
97050 frbpp.wch
|
||||||
|
dir gnbtgdr
|
||||||
|
dir jfbzjz
|
||||||
|
dir lpg
|
||||||
|
dir pgmgbfcl
|
||||||
|
dir twcdfdcv
|
||||||
|
dir wzd
|
||||||
|
dir zllcflrn
|
||||||
|
$ cd csjncqmr
|
||||||
|
$ ls
|
||||||
|
dir chpmwsfj
|
||||||
|
dir csjncqmr
|
||||||
|
57088 fnfjhvsp.jqg
|
||||||
|
52097 vgcm.dpv
|
||||||
|
$ cd chpmwsfj
|
||||||
|
$ ls
|
||||||
|
279480 tjhzggs.srw
|
||||||
|
$ cd ..
|
||||||
|
$ cd csjncqmr
|
||||||
|
$ ls
|
||||||
|
13716 dcgph
|
||||||
|
dir fqb
|
||||||
|
dir jfbzjz
|
||||||
|
dir msvlnt
|
||||||
|
88312 pgmgbfcl.qcf
|
||||||
|
$ cd fqb
|
||||||
|
$ ls
|
||||||
|
dir mmjfbvq
|
||||||
|
$ cd mmjfbvq
|
||||||
|
$ ls
|
||||||
|
79822 flp
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd jfbzjz
|
||||||
|
$ ls
|
||||||
|
302531 csjncqmr
|
||||||
|
164326 dcgph
|
||||||
|
8277 fnfjhvsp.rbv
|
||||||
|
dir jgsrgrtc
|
||||||
|
dir zwdgcd
|
||||||
|
$ cd jgsrgrtc
|
||||||
|
$ ls
|
||||||
|
60317 gzjdsn.wlc
|
||||||
|
$ cd ..
|
||||||
|
$ cd zwdgcd
|
||||||
|
$ ls
|
||||||
|
171967 fpls.fvd
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd msvlnt
|
||||||
|
$ ls
|
||||||
|
83178 cnhzh
|
||||||
|
11226 tjhzggs
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd fnfjhvsp
|
||||||
|
$ ls
|
||||||
|
89882 dcgph
|
||||||
|
212817 qbfhj.tmn
|
||||||
|
257899 tjhzggs
|
||||||
|
$ cd ..
|
||||||
|
$ cd gnbtgdr
|
||||||
|
$ ls
|
||||||
|
dir flltghn
|
||||||
|
dir fnfjhvsp
|
||||||
|
dir jfbzjz
|
||||||
|
300698 ngcsnwb
|
||||||
|
292809 qtcqhdq
|
||||||
|
dir vbwjgf
|
||||||
|
280270 wbzcr.sgn
|
||||||
|
$ cd flltghn
|
||||||
|
$ ls
|
||||||
|
111452 rhgfv
|
||||||
|
$ cd ..
|
||||||
|
$ cd fnfjhvsp
|
||||||
|
$ ls
|
||||||
|
dir lbznfb
|
||||||
|
31273 nrtrqqc.cth
|
||||||
|
$ cd lbznfb
|
||||||
|
$ ls
|
||||||
|
175736 ljpr.cwm
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd jfbzjz
|
||||||
|
$ ls
|
||||||
|
237625 tjhzggs
|
||||||
|
$ cd ..
|
||||||
|
$ cd vbwjgf
|
||||||
|
$ ls
|
||||||
|
269242 jrrw.ljb
|
||||||
|
106705 pqnbrbt
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd jfbzjz
|
||||||
|
$ ls
|
||||||
|
dir dnn
|
||||||
|
$ cd dnn
|
||||||
|
$ ls
|
||||||
|
19045 dcgph
|
||||||
|
187257 tjhzggs.qzg
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd lpg
|
||||||
|
$ ls
|
||||||
|
101509 fnfjhvsp.nnt
|
||||||
|
221211 ldgjngjq
|
||||||
|
$ cd ..
|
||||||
|
$ cd pgmgbfcl
|
||||||
|
$ ls
|
||||||
|
dir bzbdphz
|
||||||
|
37920 flp
|
||||||
|
dir wpsm
|
||||||
|
$ cd bzbdphz
|
||||||
|
$ ls
|
||||||
|
252099 ffsfqfdw
|
||||||
|
312106 htft
|
||||||
|
298880 jfbvz.znw
|
||||||
|
135204 lrwccthr
|
||||||
|
dir zhbqf
|
||||||
|
108144 zsbbfhz.drr
|
||||||
|
$ cd zhbqf
|
||||||
|
$ ls
|
||||||
|
dir gtw
|
||||||
|
298022 svpgsrgj.ljz
|
||||||
|
$ cd gtw
|
||||||
|
$ ls
|
||||||
|
dir csjncqmr
|
||||||
|
dir rpzjg
|
||||||
|
$ cd csjncqmr
|
||||||
|
$ ls
|
||||||
|
278962 flp
|
||||||
|
272127 tjhzggs
|
||||||
|
$ cd ..
|
||||||
|
$ cd rpzjg
|
||||||
|
$ ls
|
||||||
|
92241 flp
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd wpsm
|
||||||
|
$ ls
|
||||||
|
15936 flp
|
||||||
|
241514 qbfhj.tmn
|
||||||
|
245049 rjgwzlq.qrw
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd twcdfdcv
|
||||||
|
$ ls
|
||||||
|
140758 bjm
|
||||||
|
78772 dcgph
|
||||||
|
114059 mqsgrc.qcb
|
||||||
|
$ cd ..
|
||||||
|
$ cd wzd
|
||||||
|
$ ls
|
||||||
|
dir fnfjhvsp
|
||||||
|
dir mcbnp
|
||||||
|
$ cd fnfjhvsp
|
||||||
|
$ ls
|
||||||
|
72702 csjncqmr.jfn
|
||||||
|
120586 dcgph
|
||||||
|
$ cd ..
|
||||||
|
$ cd mcbnp
|
||||||
|
$ ls
|
||||||
|
12494 fnfjhvsp.frc
|
||||||
|
182092 gsv
|
||||||
|
17859 pdbvmblc.vng
|
||||||
|
116984 pfbdf
|
||||||
|
113843 prshrmg.srm
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd zllcflrn
|
||||||
|
$ ls
|
||||||
|
30966 flp
|
||||||
|
245820 jfbzjz.rnd
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd hmjnnjjj
|
||||||
|
$ ls
|
||||||
|
134366 dcgph
|
||||||
|
212399 dtsb
|
||||||
|
255795 zhbcjtr
|
||||||
|
$ cd ..
|
||||||
|
$ cd lgmld
|
||||||
|
$ ls
|
||||||
|
55248 pgmgbfcl
|
||||||
|
62265 pgmgbfcl.nbg
|
||||||
|
240733 zhmff
|
||||||
|
$ cd ..
|
||||||
|
$ cd pgmgbfcl
|
||||||
|
$ ls
|
||||||
|
232717 fnfjhvsp
|
||||||
|
219581 gtcjbwpz.lmz
|
||||||
|
47399 gzjdsn.wlc
|
||||||
|
22814 hjqf
|
||||||
|
296672 hrs
|
||||||
|
dir nrzf
|
||||||
|
dir wqgcmnpp
|
||||||
|
dir wwvmdjz
|
||||||
|
dir zlhv
|
||||||
|
$ cd nrzf
|
||||||
|
$ ls
|
||||||
|
18406 dcgph
|
||||||
|
dir mhm
|
||||||
|
$ cd mhm
|
||||||
|
$ ls
|
||||||
|
95168 pgmgbfcl.hqv
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd wqgcmnpp
|
||||||
|
$ ls
|
||||||
|
dir csjncqmr
|
||||||
|
189963 dvcd.tnh
|
||||||
|
dir gzqrt
|
||||||
|
dir njffft
|
||||||
|
dir qvqp
|
||||||
|
6981 tjhzggs
|
||||||
|
dir wgfnlfsd
|
||||||
|
$ cd csjncqmr
|
||||||
|
$ ls
|
||||||
|
307371 cdptrw.rfm
|
||||||
|
$ cd ..
|
||||||
|
$ cd gzqrt
|
||||||
|
$ ls
|
||||||
|
dir pwsqss
|
||||||
|
$ cd pwsqss
|
||||||
|
$ ls
|
||||||
|
173397 flp
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd njffft
|
||||||
|
$ ls
|
||||||
|
dir bzhzg
|
||||||
|
dir tjhzggs
|
||||||
|
$ cd bzhzg
|
||||||
|
$ ls
|
||||||
|
213821 pgmgbfcl
|
||||||
|
$ cd ..
|
||||||
|
$ cd tjhzggs
|
||||||
|
$ ls
|
||||||
|
dir szvfzgj
|
||||||
|
$ cd szvfzgj
|
||||||
|
$ ls
|
||||||
|
196306 tjhzggs.hjh
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd qvqp
|
||||||
|
$ ls
|
||||||
|
dir pgmgbfcl
|
||||||
|
$ cd pgmgbfcl
|
||||||
|
$ ls
|
||||||
|
114456 flp
|
||||||
|
252954 pgmgbfcl
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd wgfnlfsd
|
||||||
|
$ ls
|
||||||
|
212011 gzjdsn.wlc
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd wwvmdjz
|
||||||
|
$ ls
|
||||||
|
70022 dcgph
|
||||||
|
dir hjgvstp
|
||||||
|
dir jhgb
|
||||||
|
276853 qbfhj.tmn
|
||||||
|
242756 qdqswjjd.wnn
|
||||||
|
dir tjhzggs
|
||||||
|
292963 wcgmgmz.shb
|
||||||
|
$ cd hjgvstp
|
||||||
|
$ ls
|
||||||
|
24056 tdjwdw
|
||||||
|
$ cd ..
|
||||||
|
$ cd jhgb
|
||||||
|
$ ls
|
||||||
|
90571 gzjdsn.wlc
|
||||||
|
132326 rrvfml.dms
|
||||||
|
$ cd ..
|
||||||
|
$ cd tjhzggs
|
||||||
|
$ ls
|
||||||
|
29139 dmrsz.qhc
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd zlhv
|
||||||
|
$ ls
|
||||||
|
315120 dcgph
|
||||||
|
290175 pgvlcvpb
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd scbgn
|
||||||
|
$ ls
|
||||||
|
258300 bcchv.qsn
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd wrsjr
|
||||||
|
$ ls
|
||||||
|
dir csjncqmr
|
||||||
|
dir jfbzjz
|
||||||
|
dir nmfmqb
|
||||||
|
dir svgtrz
|
||||||
|
dir zjvhmd
|
||||||
|
$ cd csjncqmr
|
||||||
|
$ ls
|
||||||
|
148619 qbfhj.tmn
|
||||||
|
$ cd ..
|
||||||
|
$ cd jfbzjz
|
||||||
|
$ ls
|
||||||
|
dir csjncqmr
|
||||||
|
dir flrhpzt
|
||||||
|
dir fnfjhvsp
|
||||||
|
dir gpwv
|
||||||
|
dir lwrtc
|
||||||
|
$ cd csjncqmr
|
||||||
|
$ ls
|
||||||
|
dir czmlfmf
|
||||||
|
137365 flp
|
||||||
|
dir hggbs
|
||||||
|
107369 mpgm.lbl
|
||||||
|
$ cd czmlfmf
|
||||||
|
$ ls
|
||||||
|
dir hnpjvq
|
||||||
|
$ cd hnpjvq
|
||||||
|
$ ls
|
||||||
|
41339 fnfjhvsp.wnv
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd hggbs
|
||||||
|
$ ls
|
||||||
|
273367 qbfhj.tmn
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd flrhpzt
|
||||||
|
$ ls
|
||||||
|
200923 fwb
|
||||||
|
62059 hrs
|
||||||
|
$ cd ..
|
||||||
|
$ cd fnfjhvsp
|
||||||
|
$ ls
|
||||||
|
dir gdnmpgn
|
||||||
|
256037 hrs
|
||||||
|
$ cd gdnmpgn
|
||||||
|
$ ls
|
||||||
|
64024 jmww.gbb
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd gpwv
|
||||||
|
$ ls
|
||||||
|
159155 hrs
|
||||||
|
$ cd ..
|
||||||
|
$ cd lwrtc
|
||||||
|
$ ls
|
||||||
|
150299 nzvqj.dsv
|
||||||
|
129702 pgmgbfcl.lrt
|
||||||
|
dir zvgb
|
||||||
|
$ cd zvgb
|
||||||
|
$ ls
|
||||||
|
304137 hrs
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd nmfmqb
|
||||||
|
$ ls
|
||||||
|
139823 jfbzjz
|
||||||
|
299946 nqqscdn.wsw
|
||||||
|
$ cd ..
|
||||||
|
$ cd svgtrz
|
||||||
|
$ ls
|
||||||
|
dir jdlvtm
|
||||||
|
123801 phhrgrbs
|
||||||
|
$ cd jdlvtm
|
||||||
|
$ ls
|
||||||
|
267972 tbgcnf.pqz
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd zjvhmd
|
||||||
|
$ ls
|
||||||
|
287427 csjncqmr.tfj
|
||||||
|
297578 hhhp.jvt
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
dirstack = [] # Stack of directories we are currently at
|
||||||
|
directories = {} # Maps paths to total filesums
|
||||||
|
|
||||||
|
def addsize(size):
|
||||||
|
for (i, dir) in enumerate(dirstack):
|
||||||
|
path = "/".join(dirstack[:i+1])
|
||||||
|
if not path in directories:
|
||||||
|
directories[path] = 0
|
||||||
|
directories[path] += size
|
||||||
|
|
||||||
|
with open("input.txt", "r") as f:
|
||||||
|
for line in f.readlines():
|
||||||
|
line = line.strip()
|
||||||
|
if line[0] == '$' and line[2] == 'c':
|
||||||
|
folder = line.split("$ cd ")[1]
|
||||||
|
if folder == '..':
|
||||||
|
dirstack.pop()
|
||||||
|
else:
|
||||||
|
dirstack.append(folder)
|
||||||
|
else:
|
||||||
|
indicator = line.split(" ")[0]
|
||||||
|
try:
|
||||||
|
size = int(indicator)
|
||||||
|
addsize(size)
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
sum = 0
|
||||||
|
[sum := sum + directories[x] for x in directories if directories[x] <= 100000]
|
||||||
|
print(sum)
|
||||||
Reference in New Issue
Block a user