mirror of
https://github.com/rjNemo/advent_of_code_2022
synced 2026-06-06 02:26:41 +00:00
day3 part 1
This commit is contained in:
parent
96e7b21aac
commit
b8d574b907
4 changed files with 383 additions and 0 deletions
48
day3/README.md
Normal file
48
day3/README.md
Normal file
|
|
@ -0,0 +1,48 @@
|
||||||
|
# Day 3: Rucksack Reorganization
|
||||||
|
|
||||||
|
One Elf has the important job of loading all the rucksacks with supplies for the jungle journey. Unfortunately, that
|
||||||
|
Elf didn't quite follow the packing instructions, and so a few items now need to be rearranged.
|
||||||
|
|
||||||
|
Each rucksack has two large **compartments**. All items of a given type are meant to go into exactly one of the two
|
||||||
|
compartments. The Elf that did the packing failed to follow this rule for exactly one item type per rucksack.
|
||||||
|
|
||||||
|
The Elves have made a list of all the items currently in each rucksack (your puzzle input), but they need your help
|
||||||
|
finding the errors. Every item type is identified by a single lowercase or uppercase letter (that is, `a` and `A` refer to
|
||||||
|
different types of items).
|
||||||
|
|
||||||
|
The list of items for each rucksack is given as characters all on a single line. A given rucksack always has the same
|
||||||
|
number of items in each of its two compartments, so the first half of the characters represent items in the first
|
||||||
|
compartment, while the second half of the characters represent items in the second compartment.
|
||||||
|
|
||||||
|
For example, suppose you have the following list of contents from six rucksacks:
|
||||||
|
|
||||||
|
```
|
||||||
|
vJrwpWtwJgWrhcsFMMfFFhFp
|
||||||
|
jqHRNqRjqzjGDLGLrsFMfFZSrLrFZsSL
|
||||||
|
PmmdzqPrVvPwwTWBwg
|
||||||
|
wMqvLMZHhHMvwLHjbvcjnnSBnvTQFn
|
||||||
|
ttgJtRGJQctTZtZT
|
||||||
|
CrZsJsPPZsGzwwsLwLmpwMDw
|
||||||
|
```
|
||||||
|
|
||||||
|
- The first rucksack contains the items `vJrwpWtwJgWrhcsFMMfFFhFp`, which means its first compartment contains the items
|
||||||
|
`vJrwpWtwJgWr`, while the second compartment contains the items `hcsFMMfFFhFp`. The only item type that appears in
|
||||||
|
both
|
||||||
|
compartments is lowercase **p**.
|
||||||
|
- The second rucksack's compartments contain `jqHRNqRjqzjGDLGL` and `rsFMfFZSrLrFZsSL`. The only item type that appears
|
||||||
|
in
|
||||||
|
both compartments is uppercase **L**.
|
||||||
|
- The third rucksack's compartments contain `PmmdzqPrV` and `vPwwTWBwg`; the only common item type is uppercase **P**.
|
||||||
|
- The fourth rucksack's compartments only share item type **v**.
|
||||||
|
- The fifth rucksack's compartments only share item type **t**.
|
||||||
|
- The sixth rucksack's compartments only share item type **s**.
|
||||||
|
|
||||||
|
To help prioritize item rearrangement, every item type can be converted to a **priority**:
|
||||||
|
|
||||||
|
- Lowercase item types a through z have priorities 1 through 26.
|
||||||
|
- Uppercase item types A through Z have priorities 27 through 52.
|
||||||
|
In the above example, the priority of the item type that appears in both compartments of each rucksack is 16 (p), 38 (
|
||||||
|
L), 42 (P), 22 (v), 20 (t), and 19 (s); the sum of these is `157`.
|
||||||
|
|
||||||
|
Find the item type that appears in both compartments of each rucksack. **What is the sum of the priorities of those item
|
||||||
|
types?**
|
||||||
0
day3/__init__.py
Normal file
0
day3/__init__.py
Normal file
300
day3/input.txt
Normal file
300
day3/input.txt
Normal file
|
|
@ -0,0 +1,300 @@
|
||||||
|
DPstqDdrsqdDtqrFDJDDrmtsJHflSJCLgCphgHHgRHJCRRff
|
||||||
|
BcBGcQzVBVZcvznTTTvZcGTpCRRRfRCggLflHlhhCZpZCj
|
||||||
|
vGQnQvnzTzNTTbVnzGBqMqwqDLdPtMmbwqqLLM
|
||||||
|
wLRFRqvFsFRjfrHddbdbjzdH
|
||||||
|
lcsnSJPSSVVlGmGrHzbbrGNrdzbz
|
||||||
|
mSmlnnPlmJmncVDSlSZSlmLBCvtwBvtLCqqswsDBCTWW
|
||||||
|
pfqPrPgmmhvqdlsdWq
|
||||||
|
nfjHLJfZcLbVtQWWtndhls
|
||||||
|
CzJJFLzRzfDwrmggpC
|
||||||
|
CWfllmlCDFlZZqMfmFBWmWLJVRLVwNNtRVGPpwtGpqbJ
|
||||||
|
jHndndndcjhscnhHNtRbVtLbGpJbRRcb
|
||||||
|
HSrvnQzQSMDlLzBCfg
|
||||||
|
BQRVbgQQBJBbBtVBSSSRWMQbdNvvRPjZjCCdPLNZNNsNCCzd
|
||||||
|
HwpFpnlGpGZWGvjzPd
|
||||||
|
FTDmFrrwDpFMtmQVQQcWgc
|
||||||
|
VhbPshVDPDFWhWsgDNMMbVtmBjwBffpwBntnmnqfnswt
|
||||||
|
QzzGrTZZdrdlTcCLpRBnmBRRjBCqtptt
|
||||||
|
rJdGlmLTJdJrvZDbSbDSWDNbFJgD
|
||||||
|
qrcqTBHTcHgwWWdHRjdWBglBbGPpGvvPbszGzsbPpQfPLwPz
|
||||||
|
nFVmjhMjFJCSJsQQPQLbLpzCPQ
|
||||||
|
SnMSVVZSJMNMZNDVFtJtNRBdqBrWrRHWZTllrrjgHq
|
||||||
|
ZqdqcrPqqrwnQqnrZqjVcqrQwwmNbzNzwbNLzvFbHLbNmBLF
|
||||||
|
LCDsCsRTfLTDszzNbsbNNHbs
|
||||||
|
gLfCgShfCgMPlPrVcqrQgn
|
||||||
|
QSNSLDQDLfqqPwwBNLqgqJMMmmRRCTzHnCHhRzHmfCmh
|
||||||
|
lGvdbdWdVvsVszpDhHmmlnMpTC
|
||||||
|
ctbdtVsbbvvsbWZFdVQJqPtgLQBDBwBQPJwJ
|
||||||
|
dggSSDCPddRWPnSSPWRDgdSrTDsDQDTzQGGTMbsMMVsQfTfV
|
||||||
|
jmBvtFpBcBhhjljZHphztMsCbsTTCbzsqGqsfz
|
||||||
|
hccpLmhFlcwCrPLrCPnL
|
||||||
|
MMHZnGrCfJnfCPggSSGGSSSgLW
|
||||||
|
qhFhRlDFDlqFsgdvJdWdDdcSvp
|
||||||
|
wVlhqTbbRNFqswlVVRNbZfHCrntMBrTTZnJMCfnn
|
||||||
|
sHGZscVGHJMtmRrqzRqqqTqt
|
||||||
|
SjvvNgjLShWWhhSQNWqmrBzlRllTTgBqnRmq
|
||||||
|
LNQWLfWhSQvLdCddWWPHMcbHHrJcDGFZCJssFM
|
||||||
|
mSDjSVQbVGbmqDVbHmqqJTZzPHTHhhRJhwsRPcRJ
|
||||||
|
tFfFFttFdsNntfpMMppJWwZTzJczJcZPzwWcdJ
|
||||||
|
vNtgCrpgNptptgCCbbmjbSbvsVjSsjGG
|
||||||
|
VCQlZJCTPRWsBsjTTT
|
||||||
|
wvNrnbbvnhdNhLMfGsrGpRFpGpjp
|
||||||
|
dwndHbHbbLqwwhNcLsqSHSCHJClQtJSttQDPSJ
|
||||||
|
ZlrvrdvpGBBhlDrshdqJHRPHqPTJzRPPqw
|
||||||
|
tcftfSgFFgcgLPmPmpnqFwJRHP
|
||||||
|
pWLCcWNNNNttMNgZvlsvrBrsrjWDjB
|
||||||
|
wgdCJgDMDwMCwDMCMJsJJfpffVpVfbfrrrrgjgllZp
|
||||||
|
QFRhvttRthtQzzmpBWbWzWZSVpbSpl
|
||||||
|
btRttRLttGNqvbFHLwCdDcMwnPPJDnDD
|
||||||
|
VhmMNllLqGLJQNhRfZHgSPfgSPTqZj
|
||||||
|
sBwDcwBtsdzvvHZRlPRjDZTgPZ
|
||||||
|
pWvvBBcBCdzNLVQVWQlNlW
|
||||||
|
NsSppvSjSPNBNLJJLh
|
||||||
|
fCGtqQbZZGZQZTbtzbqbCZThddcMBddlJGhdlBMcddgLlJ
|
||||||
|
zZFTqwLtTRFqTQwvmprnRVSsDrnvVR
|
||||||
|
FttFTzzvlVHFzTjpbvzbFSDDdVGhdqLGWGJdVDDfsLqG
|
||||||
|
cmBNCRnwsCcBPMfLLfJGcWhWqfdh
|
||||||
|
BwPmZZMmZMCsnrwMrmbHHbjbSvSbjvrlHpzj
|
||||||
|
sZQHCBFHQQQPGQCCHCHwsHFshhtSnnqjbRSSPngnhbRjqVPn
|
||||||
|
mzLvmDvNNWvNvrzzrMTzJNjqndqbnSnnRgTdtjdbjhTt
|
||||||
|
WzzWDlJLzLDvMWJJlMzmLJWcpHFQBpBgBHGQGBHfwwBfQQlG
|
||||||
|
gdpFrdrmrDsqqswdtccgWWCMlChSbhqSlCzBlSqh
|
||||||
|
TTvjrfjNJPnRQNTQjvNnCSWBVBVbClPSVSbSVhSh
|
||||||
|
HRvnfTfvjjHZTDsmcHDsrDsdmp
|
||||||
|
bFChjhbpbjqsntjtns
|
||||||
|
vdWcfMHfddvrlNMNdWWTNgBqDngBBZBBQZshgSfgnD
|
||||||
|
JlwrlrlhlcJWcWMwhWNVFpLzwPbbLRFPppVLzm
|
||||||
|
DtBtgLvgcHzllsTwzSTg
|
||||||
|
vhhjZrCrZdVdZVSwPMwwTTMGwT
|
||||||
|
nmpfqrnZJbqBBvRc
|
||||||
|
nMvSLvWSWPVPvWnSLShFLBjVbpNVGGbVQbbNcBcBBc
|
||||||
|
sTzJsJszbbQbdQJb
|
||||||
|
DsDrwTtsCTFhLQSShRwh
|
||||||
|
RNFQhTQqHNNGRsNqQFNsHhFCwwPLwPqwzfPrrPBwpJSJJw
|
||||||
|
vMMMblZjddlvWbjbBBfbwCrPPLJppwCL
|
||||||
|
jDmvcDBlBdjVglgddmvDQRNFtFRGtQhstHNsGFHV
|
||||||
|
rhLHmZnMrRsZSstZLLtZnhSCNbbmPJVcblTNNTlccpNTjJTj
|
||||||
|
WFgGddGFFgFDddMblpJjlTJTPc
|
||||||
|
QGWqBBfWgBqWwFwzMGvzDqSSrHnCHsrssCRZrfRhHLfH
|
||||||
|
HHzcWqNPmZcqFHPZGBdMRBMDlllWpRDJMl
|
||||||
|
tTgSvPhbMDJlbJQb
|
||||||
|
SCTtvtSPftswjvPhTgffVqmGZLmqmCCcqZzZHFNznF
|
||||||
|
QNpppRrdZvdgzpQZNpgRRgbSwmDDvFGGqwJSsvSGSqGG
|
||||||
|
HchWBMcBVnnWcHPjHhWcjHTqJFDGMSSqDMwJJbGwSsGGSb
|
||||||
|
tcCVcBjPjhnWlFrCFNZflQNr
|
||||||
|
HsVMrqrPqvvgprSrLG
|
||||||
|
THJWBJDwRFvBgGSzgF
|
||||||
|
DmhfHnmQncMNVMqPqbcd
|
||||||
|
SqZmMJqvHJBhHJLp
|
||||||
|
wsgTVTSsPssjjFVrTrFlhLhCFlBBnHplHLLHfF
|
||||||
|
zgggdwPrRrsrjjgRwVwdwdQTmvMvZqDZbWqqMSNWNbGQbGZN
|
||||||
|
fBDBfLZnTLZVVmmDcQMDDV
|
||||||
|
jPFtJFpHpJqfJFrptwrJdRWRWNpQVmQRMWNVVVNVvQ
|
||||||
|
zHwJgtFrTlslfghf
|
||||||
|
wMwTttCCTTSTfBmPzPVZnPZLVVtbnN
|
||||||
|
ldRRRlRHggGcvcRbZsNzvBVWnnPBWv
|
||||||
|
hdlJHgpcJccJhQdJrcrhwFMpDqCwCMBqjSqjqpTC
|
||||||
|
fJfnwJJnnHJgJHTgjsjDccNjcbgNjm
|
||||||
|
VdLqRRqGVqpRrPpppMBjDNmDctdsBlNjmZdZ
|
||||||
|
PDQvPQSvpGDrTwfJzzfFnTnS
|
||||||
|
MnHvnHHMRMzPTlDLPPRGcl
|
||||||
|
dFnfhFVwhdBPBfGWlPcP
|
||||||
|
JNrQFsnVtwsgvNzvmMjpzS
|
||||||
|
BZVPFpNpcNZpmRRPpzcVNhLLnssDjjDGnqjjLDFDjq
|
||||||
|
mMJbJvtJQQHlJDGCDnjvChDSsv
|
||||||
|
MQwWJHdQwWrJltQrgfNPmfBcBrpBpZ
|
||||||
|
ZWZqDsZZqWsWvWLPwPbpHjdtSbSjSCSPPSCp
|
||||||
|
MFVNMLmFmNzcTTrFrLbjdjbpCdCSbTCShRSd
|
||||||
|
czNzLrznlGNNrMzMwDlJwJWDwJwqJDvW
|
||||||
|
GlgchGGVShlQcQfDhzZrNFnFNFNjFzNFcn
|
||||||
|
dwCtpwHTtPTWpdFNfJJzRzvJNR
|
||||||
|
tLBBmWHftBttPbLwCHWTsSSQVglqgMsMBDSMGlQS
|
||||||
|
RDDDGhGfvPPTTPTThn
|
||||||
|
ZFLMmjpCpfMZzFqmqsCmPjdVBlVBVnWBPNTVbnTV
|
||||||
|
zHqJMCzLvftRQQHG
|
||||||
|
nTcbnvPsvdvFzpczVZmMGg
|
||||||
|
BCCJwSDqhQLJmMMpzGZVFVFB
|
||||||
|
qhrwJwrJrrzJNqwWLsTTnlTlbnsvbstWsW
|
||||||
|
vHRbqPJZvRPZhShJvTZllZtgzwlfBGBlsm
|
||||||
|
VdQjVVCssQVrWrQmTBgBzglmgCBGml
|
||||||
|
NnpQNpcFpNWshPRLsbSFsH
|
||||||
|
cVGmVZVwVVMLdvcRttTdbB
|
||||||
|
ppCQrwzHBtLrttLb
|
||||||
|
hsFJQzFWCpCqjZGVwlhlPP
|
||||||
|
HDGRzgWhgfzVWfRpspwRwbwStSwt
|
||||||
|
ZBPPPmmmTMQMPcZrBmSptSbbQCwtlsNqCwjC
|
||||||
|
TTLMMmZvPTrMZvFMmcmvrTccDDnfGHJgJhHhnhnLfVhSWDJz
|
||||||
|
pNrpjzthZPnGrzzWbJLLLbbJZwgSvZCV
|
||||||
|
MQsFFFDTfMNfRFfBFMdBdwLSvgbSTVCqTgVbbTLvwV
|
||||||
|
BQlQDMFccQsNmWpPGhpcjr
|
||||||
|
CTgGRCRglLlLTllL
|
||||||
|
vMJmhPJcmPBMvhqPDnNNqlWnwDWqsRQs
|
||||||
|
hcBfcJRPFfvvRvJZBrfMPZdpbSSGtSdtdgtzzSZzbV
|
||||||
|
NQLzNzzJcrLrSgZSSGgZrR
|
||||||
|
bTsjqHvcmTHvjgZGDvDpGZRfpg
|
||||||
|
WqTVPbdnMlLJncQC
|
||||||
|
hZLBrqLGLMbzLLBhfMMrnnNJlnNnlnJJNNdCJdzN
|
||||||
|
TWTsWqvtvpTSgRHpVFdjgjCPdgJlCFCFnF
|
||||||
|
swSTsTwpTVRmVRRRqMDMfqfDwLfbrhLr
|
||||||
|
NTQHWNQWrQwSTDWlcPPBHZBZbPgZJZ
|
||||||
|
nmfjCRCfRhndJcjBbcbcbg
|
||||||
|
nsppRfssfzCnqgzTzrwTwQVTWM
|
||||||
|
mFjQmDGmbbGjmChrCwdQBHCHWh
|
||||||
|
qvZZnPvvnngMpnlqpMZnpsTgWHTRCWrVdVDBWRhHBrhHDHhd
|
||||||
|
vqZgnnqgLvqlPllpnjGDjmNjNLfftftLFD
|
||||||
|
rfGsjsMNnFMMFddMsttDMgLHGlmJLCPPmHHGmHPlmm
|
||||||
|
vZcbhQbrRbVZPJLwPTgCLlgb
|
||||||
|
hchzSBqzQvphnWnrjFdWMqff
|
||||||
|
WmfPWfVsfqszRDqPqgpvHhvdwddGMmGghM
|
||||||
|
QtTrtTcSBjtQCctStrTrzhpwjGvGHhngwMHGHvMv
|
||||||
|
TtTQlQFcSSJlcccBbltQQTTRsPZDsWzRFzWFzPNfsssLPs
|
||||||
|
QpNNMrjcNMccGNdvLBBlBsBjnsnF
|
||||||
|
tTSqbbbqCtWWCTWSVTmmCJPwVwnwvFPnsPVnnPfddlvf
|
||||||
|
HmhJTZWqHqCJJJltqpNGRgzZDcQNrgzDGM
|
||||||
|
HcLVRhhTRsLRRVjslTscqNQmVNQQgQttqNwNZtmw
|
||||||
|
nJdBJJhfFPSCbJBJBMbzFbFgmNmtgmvgNgnntNwZQQNNmw
|
||||||
|
bMbPzJbzCBPrJfdfbBbdCrGHlLTTpWjsGhGTTRTRlc
|
||||||
|
sJCCpQJQCrfCfnSCrT
|
||||||
|
vmqgNggzgmZqmPShqBhThfhDhjDhhB
|
||||||
|
RZNzHRzZSQwHwHVVWc
|
||||||
|
jtVtvVHgvjJbHjjQPMZdCcwlMdNbdFlNlc
|
||||||
|
WppSBDzGfBzTBqQWwCFMlwZMwMcZ
|
||||||
|
zBfnqpRGnSSqTfqpTpSnnHQsjJgQvPJshHtHVh
|
||||||
|
qJMRMcPPVzVhmsDWfhWT
|
||||||
|
BglQBNlgZtQBHLHHBnTjWSWmFmwDmWjSsnmF
|
||||||
|
BdHvgHBvBtZbTpJRPCdcdpGrGJ
|
||||||
|
pcGcWGWlvQZpzmDbgFmz
|
||||||
|
HqqnddDdddjzTTggjZgFtT
|
||||||
|
sHqRwrRsJswLHrMLLRJdqNVVrGffPGWcvSSWlDfGfc
|
||||||
|
lttTbgRvqvtQRhjLzGjLVh
|
||||||
|
JJfrHfrdffZJQmZhLLZVVwFj
|
||||||
|
sBjCfSNNTTqnCnqD
|
||||||
|
qMtWjSrHftGfjqrJGMqzVzFmBBrzQQwzgBVQVQ
|
||||||
|
LDChPbThbTcTpCTcnPPQPQzVPvvzQBBWgVBQ
|
||||||
|
ZLspppLpdZZttdHttqdWMf
|
||||||
|
htJcJhpMQQWjhNWdJQSCFCTvFBPCTDlMmDCFlM
|
||||||
|
jjbbsfjwZbLGVVqHCFPvmvDmClTfmP
|
||||||
|
zjVVRwZwnRJtnNQt
|
||||||
|
PCPVSzLMMRqGwgMmHmQmDQ
|
||||||
|
slrrbZZgsfcdsgdhrHFGQHQFwvfwFwDGTv
|
||||||
|
NclhgpctrrNjllcZdcrpZnPPqzLLSSLqJLtJWCWzCn
|
||||||
|
PBLSBPVBwpTVppfT
|
||||||
|
lZCqQQtCQGPJJPtPHHwTwZTTZpwHsfRH
|
||||||
|
mCtGFDqFGDGQjPGqjJMMlqPgdWgSSgBWWcWzLdgvMzgBMg
|
||||||
|
cLBrfchhFBcnrgvqvPGvvwSS
|
||||||
|
QpzpstDDZMwDZqwh
|
||||||
|
WzpbWTjsbhpQtjThsjJFRNLnfLbfRLRBLlFB
|
||||||
|
ngnWWqnfgqtfsrWftqsrFWPSdSSdRCTHRSwpRGTfGmSG
|
||||||
|
VhJhVczJQcvbvvlhBpvlPdmlwHRTGHSRPTSCRGTd
|
||||||
|
zVcBcMhzcVcvMJJJDpWrsqrtrWLWsgZZFtFD
|
||||||
|
fbccrJlrffTwJDJTtBtB
|
||||||
|
hRNNFddsgsFPLLRVVwthMCQTtBwrtT
|
||||||
|
jrsPGLNjsqPlvGbZbcvScz
|
||||||
|
HFPmmgQrQzFgrLVPPrLFPNDJNJzzcGbJTbsSzbGGNc
|
||||||
|
MtvCMhJBdnMhwfhlwnfBfMDCDSjGbqDNGNGqGjDDjsDC
|
||||||
|
wwnhhdtBBptwdlhlRntRldJFVWRFPmWZFmHRZZmFQPRWmm
|
||||||
|
WrHNNTBNTTTBwHHcSTrBnSzJPFnpJfpLVfpDVdJLFJLFdD
|
||||||
|
hRthQvhRQlQmDpfVJFdLlLLj
|
||||||
|
hMZZbCMvgQgBTBGNGDcWbr
|
||||||
|
HvQjMRMTzjsCQzHTCFfVVZLPVvfLfPVpZg
|
||||||
|
GtlbBtSGlSbDdStrhSFCPVDgZgLLgPpPJWPF
|
||||||
|
rmwSbcbcdbrbGljQjCzCCwnHRqQT
|
||||||
|
bbgNSHPPgnmMMZtNcMpp
|
||||||
|
VFzFDFVtCBFDCVFdMlhZMhdhmhmplwZL
|
||||||
|
JVtBjGRFRttFCGDFGJJDQQgSgTWPPfSSfWbQnHvPWW
|
||||||
|
NvdBpwNvGNFvpBGGBmLFblrtVTwDttlhtlblfQbQ
|
||||||
|
SCMMsWCMSRZCqsmWcRWgRRsVtlrtrQbtQftThrQTQtqrtQ
|
||||||
|
WRscMgZJJCJWzZgSWNLFdBNHGzpFGmBFFG
|
||||||
|
qghqRVzhLNRLqzLhVztgQdLFdrccCnSpcZdSZcTS
|
||||||
|
DwvmHDJDsmvDGmHbQBlslMDDCrTCnppTndrdBrFnFTSdCCnZ
|
||||||
|
GGwJHlGwwvMHJljwwDMVtfhtWWhzqVPPjfQRqz
|
||||||
|
BsDMPrqPzsDwwCLGmqjpjm
|
||||||
|
VfFJQlVQcvfwJLJCJppLNp
|
||||||
|
vfcSHCglCgbgbbbFvSlvQfPsrsZrPzZzDWWStPhtZPDP
|
||||||
|
gjMsnFgbnllbjMfSZBHHtpHvvvFwhv
|
||||||
|
DDRZDLdVCLNLJwBCShQHHwwBzv
|
||||||
|
DNJNTLJRTqWmjWZnjrlmjW
|
||||||
|
ZTSVSFZCLTnvzfzqvnNL
|
||||||
|
PfPcJljfMpvtlnztvQtw
|
||||||
|
PsJMMMWpGcgMHMfjRBThrgrTbBSBFdVSTF
|
||||||
|
GccBRWjgtQqsTcVQcw
|
||||||
|
JhJCMJHPLffMChlfLCLHMMrDQsQqDVQsqTDbVvGqDhhzqD
|
||||||
|
dHGlfnCHlJrNmtdptggpmW
|
||||||
|
wnDDSBCSBSDLzLLmHLrlwlmpTTqzGJJfpjfjNpfqbpbdpG
|
||||||
|
MMRhFWWRvZPZRZQhFZMVhVSNqjqpNQffJjbjfbjdTJbp
|
||||||
|
VMMsWcZRWgMPvRSrSHmsrrtwSHnr
|
||||||
|
TQchPTgjBcNgPHhhThtNzQdzdsCmRDJnzCCmCdCm
|
||||||
|
vllVwrfvbSBVFSbVGwlrFGlqRCDzRJCJdzvJRzsdLDDLsdCm
|
||||||
|
VrMrqSWbfqWbBhhpWjNTttpjjP
|
||||||
|
rsfvSHHcvwrMPtcQZgnDhGdvJzngLzzJLJ
|
||||||
|
lWmVlfbCCNFCpBCmTpFFJgzhDLGhmRGhLhmGdgGR
|
||||||
|
pNBfflVTNpfWTWbWWbjNVqBsscqsqrZSwMwZrMPZSZrZrs
|
||||||
|
PJPHPJmhhHhlHPQgCndngTbWnqCWDGTD
|
||||||
|
tSwccFpFqwMcFbGFWvnnWvCW
|
||||||
|
MwLwLMSwpNBBtctSctfhZHJQhhqmlRlZRNPH
|
||||||
|
GNzdZhVGvtGZVVgGgtfHHWhpLPPpLWpWWnHf
|
||||||
|
RjwqRcDTvCrWJWWnlLnnqn
|
||||||
|
DbrDDwwBwjjsrbDTRTBmwgZmgGgmdttvQvQFSQGFtg
|
||||||
|
jRgcZRfhmHfZjPZRgHffLFTzzddBTBBFzLDZzBTF
|
||||||
|
VtsJwSbcStlwMqbtwbvWBWddGGdrFDDWJWrzTT
|
||||||
|
VwsQQvlbVbVlbNllVwbMmmpnjpfChfQpnhfcCCnH
|
||||||
|
dFnFjWjTQTFzFWPWPgqhRQRqgVhRqfRqQJ
|
||||||
|
bStrbpmNGHSrBDmrNBtHBhMVLLqLqVVglrllPVLgPg
|
||||||
|
tSsbBDmBbbGmmSHDbtmHbtNCjnzscZccjnPcTcdzWcvjswFz
|
||||||
|
lFCjDhqggMlDvMhFDgqFFzHHwHwwwTpLBwmwqmmpBpwT
|
||||||
|
GPdPnStGncQGNStZPpBmVZmRmfzTRmVVfL
|
||||||
|
tWtNdPWzsbtMDCbrCbrjrv
|
||||||
|
BJHMgLlcMTBLCtbqmMDGppmmMM
|
||||||
|
ZFPsrrdvwrNvrdNZsvhrrzzRSmJRbJSmbztsmpRSSm
|
||||||
|
NwhfPZFNdFQPVQdvZFNgjglJLTCQngQWllBcTT
|
||||||
|
jGlQQvQvpRQRGfnPLfcfGTnP
|
||||||
|
BMqmdBVBwmFdVMFZdcTPqgLnnggTTLSzPS
|
||||||
|
FVtMMVcbZVrcZMQCHjHWJJCJDvrW
|
||||||
|
rPPwVwbpRbbVlllTLCTRqTLL
|
||||||
|
dNdZssBBCBszHsjhDTQgqLDvlTgDZgll
|
||||||
|
dSsCNNHMdsdWWWmpGfmPFS
|
||||||
|
rzCLrsjgZjwcwSZc
|
||||||
|
wNBNRJpRltHNWWRHBlGlJtRcTZSVBmZDVqZTfBVVTDTVTD
|
||||||
|
NWPtGJPNGWHvpvtwvWgzQvdvQQzhnsnCvCLM
|
||||||
|
HHbJhzddMPbPgnDWbZ
|
||||||
|
BLnjLNvBrrcvvvwnwLrnqrgpPRgRNCWgZDPPpDgRpRWp
|
||||||
|
jtsBqScStfJQnnVF
|
||||||
|
QVFSVgQFZZQlQqQSlgQpRppSbRTSTppJJbRpLb
|
||||||
|
cGwCDwjrnrGvzBzGnwwvDBjnpLbsLTTqRPbsJPMJMWpPns
|
||||||
|
tcGzrCdtGdQmVZqVNQ
|
||||||
|
RtTRhncVMTVccShRTctLdfPdJpLPqJhZphHpJs
|
||||||
|
BzssCmFNWWqWwqwPLH
|
||||||
|
svzvvsmmFBmsggrGlGMVSMtMRRncSQScRRRl
|
||||||
|
rmmqrQQwLbbGrrGr
|
||||||
|
cNJzzzWtWmLCGGbLWWbv
|
||||||
|
cVtMppchzMBVMcNJcMsRwqZFMlgmggmRgg
|
||||||
|
mQsQBHFMrbddbRqH
|
||||||
|
NzhcQNfNNtzvWwZdSrgbrprPrwLbgb
|
||||||
|
zcJVhTtNNcvcfVZmBmQMGMMljTCmlB
|
||||||
|
FlldqjSlCgfvPFfvFF
|
||||||
|
rbnDtVBMbprTsbVVcTDTrpMcmNwgHPgghTmNfLwvfPNLwhdT
|
||||||
|
drMppdnbbtQDBtbnsBbcrrtbSqSSRCjlQZWllllSRlWRGCCC
|
||||||
|
nqdCsqbbwdsrHFVJHcwFTc
|
||||||
|
jPPjtWjPWgRltRLsBRrNpHFDHVFWVVJNNHrD
|
||||||
|
fgllPGQjBffLjtzSsqvbSSzGvnhS
|
||||||
|
zsVBzMfHHnzlwwVlqcJJFT
|
||||||
|
ZzRLvLDzQzTmlWlqWRWF
|
||||||
|
GbQQvpGvSSpjdQjSQZpQZGLfrgBCsHzrdtCsnfCBHsBgdH
|
||||||
|
zBLbLWzqqwLMnMZTnHlnsHTvFlFHNT
|
||||||
|
fjhdcrjjdVdrGSmmdfccGclPvlvPTlGHTFgNvNgqFFvg
|
||||||
|
pmmcrcRrjSVJchqVccjpRwZMDwCJQBbLDCCbwBWLzL
|
||||||
|
TDMBgBgLlcjBfMfcVJVmGnnJjvPVCPVv
|
||||||
|
zzptqHstJqFzzdJJZNvNpvNpnNvGnNZm
|
||||||
|
dHszrWQhdzHQqdztwQBLSfglfDbfJlJTLg
|
||||||
|
VTmvrldtGGwmlvmGDHlLnFDCCplFQHLH
|
||||||
|
ssgjzSzzJCQSSFVVQF
|
||||||
|
WsRWhgVqRtfvwcddhc
|
||||||
|
bdlDwznhnNlffMcPTPfzzQ
|
||||||
|
srCRGRrZCmVTBfBBfTQcZb
|
||||||
|
brSrrGvRVvWmRsrHrWSbjNJwdDFhnNlwtlnSdnhN
|
||||||
|
QQqqRfdQQSdjgPmZfBmmPgRhphphJtLmJhTJJhVbTtLhTb
|
||||||
|
vvlNGzDDDcslcsGDlWHtCFVpcCbThFTtbJFtCh
|
||||||
|
DrMGlzMVwNGWsWMHDMvlzlMfZdQdQPZfSZRfdrPBfqRZgj
|
||||||
|
qVHfHNJCHVvvFFbfFlHHnCQQDhLnhhhPZrZnPZPn
|
||||||
|
mSMszWRMQmhqrnZL
|
||||||
|
GjtzjSSdRGSjsRtdRMttgGgsqqFNfFcGVvVVvlbHFFGFVFwb
|
||||||
35
day3/main.py
Normal file
35
day3/main.py
Normal file
|
|
@ -0,0 +1,35 @@
|
||||||
|
from string import ascii_letters
|
||||||
|
|
||||||
|
test_dataset = [
|
||||||
|
"vJrwpWtwJgWrhcsFMMfFFhFp",
|
||||||
|
"jqHRNqRjqzjGDLGLrsFMfFZSrLrFZsSL",
|
||||||
|
"PmmdzqPrVvPwwTWBwg",
|
||||||
|
"wMqvLMZHhHMvwLHjbvcjnnSBnvTQFn",
|
||||||
|
"ttgJtRGJQctTZtZT",
|
||||||
|
"CrZsJsPPZsGzwwsLwLmpwMDw",
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
|
def priority_shared_items_sum_1(data: list[str]) -> int:
|
||||||
|
return sum(process(line) for line in data)
|
||||||
|
|
||||||
|
|
||||||
|
def process(rucksack: str) -> int:
|
||||||
|
size = len(rucksack)
|
||||||
|
a = rucksack[: size // 2]
|
||||||
|
b = rucksack[size // 2 :]
|
||||||
|
a = set(a)
|
||||||
|
b = set(b)
|
||||||
|
item = a.intersection(b)
|
||||||
|
return ascii_letters.index(item.pop()) + 1
|
||||||
|
|
||||||
|
|
||||||
|
def read_data() -> list[str]:
|
||||||
|
with open("./input.txt", "r") as f:
|
||||||
|
return [line.strip() for line in f.readlines()]
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
dataset = read_data()
|
||||||
|
res = priority_shared_items_sum_1(dataset)
|
||||||
|
assert res == 157, f"{res} is not the right value"
|
||||||
Loading…
Reference in a new issue