Compare commits
3 Commits
6528547443
...
master
Author | SHA1 | Date | |
---|---|---|---|
b419e68fb8 | |||
3f56e96f57 | |||
31cc87e7e9 |
7
day2/Cargo.lock
generated
Normal file
7
day2/Cargo.lock
generated
Normal file
@ -0,0 +1,7 @@
|
||||
# This file is automatically @generated by Cargo.
|
||||
# It is not intended for manual editing.
|
||||
version = 3
|
||||
|
||||
[[package]]
|
||||
name = "day2"
|
||||
version = "0.1.0"
|
8
day2/Cargo.toml
Normal file
8
day2/Cargo.toml
Normal file
@ -0,0 +1,8 @@
|
||||
[package]
|
||||
name = "day2"
|
||||
version = "0.1.0"
|
||||
edition = "2021"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
2500
day2/input.txt
Normal file
2500
day2/input.txt
Normal file
File diff suppressed because it is too large
Load Diff
99
day2/src/main.rs
Normal file
99
day2/src/main.rs
Normal file
@ -0,0 +1,99 @@
|
||||
use std::fs;
|
||||
use std::io::Error;
|
||||
use std::slice::Split;
|
||||
|
||||
/*
|
||||
Mi:
|
||||
A: 1 for rock
|
||||
B: 2 for paper
|
||||
C: 3 for scissors
|
||||
|
||||
U:
|
||||
X: 1 for rock
|
||||
Y: 2 for paper
|
||||
Z: 3 for scissors
|
||||
|
||||
pts:
|
||||
0: Loss
|
||||
3: Tie
|
||||
6: Win
|
||||
*/
|
||||
|
||||
fn calc(result: Vec<&str>) {
|
||||
let mut score: i32 = 0;
|
||||
let mut score2: i32 = 0;
|
||||
let mut new_vec: Vec<Vec<&str>> = [].to_vec();
|
||||
|
||||
result.iter().map(|x| {
|
||||
let mut arr: Vec<_> = x.split(" ").collect();
|
||||
|
||||
if arr[0] == "A" { arr[0] = "1"; };
|
||||
if arr[0] == "B" { arr[0] = "2"; };
|
||||
if arr[0] == "C" { arr[0] = "3"; };
|
||||
|
||||
if arr[1] == "X" { arr[1] = "1"; };
|
||||
if arr[1] == "Y" { arr[1] = "2"; };
|
||||
if arr[1] == "Z" { arr[1] = "3"; };
|
||||
|
||||
let pick_points: i32 = arr[1].parse().unwrap();
|
||||
score = score + pick_points;
|
||||
|
||||
if arr[0] == arr[1] {
|
||||
score = score + 3;
|
||||
} else {
|
||||
|
||||
let rock_win: Vec<_> = ["3", "1"].to_vec();
|
||||
let paper_win: Vec<_> = ["1", "2"].to_vec();
|
||||
let scissors_win: Vec<_> = ["2", "3"].to_vec();
|
||||
|
||||
if rock_win == arr { score = score + 6; };
|
||||
if paper_win == arr { score = score + 6; };
|
||||
if scissors_win == arr { score = score + 6; };
|
||||
|
||||
};
|
||||
|
||||
if arr[1] == "2" {
|
||||
new_vec.push([arr[0], arr[0]].to_vec())
|
||||
} else if arr[1] == "1" {
|
||||
if arr[0] == "1" { new_vec.push([arr[0], "3"].to_vec()) }
|
||||
if arr[0] == "2" { new_vec.push([arr[0], "1"].to_vec()) }
|
||||
if arr[0] == "3" { new_vec.push([arr[0], "2"].to_vec()) }
|
||||
} else if arr[1] == "3" {
|
||||
if arr[0] == "3" { new_vec.push([arr[0], "1"].to_vec()) }
|
||||
if arr[0] == "1" { new_vec.push([arr[0], "2"].to_vec()) }
|
||||
if arr[0] == "2" { new_vec.push([arr[0], "3"].to_vec()) }
|
||||
} else { println!("fail") }
|
||||
|
||||
}).collect::<()>();
|
||||
|
||||
for i in new_vec.iter() {
|
||||
let pick_points: i32 = i[1].parse().unwrap();
|
||||
score2 = score2 + pick_points;
|
||||
|
||||
if i[0] == i[1] {
|
||||
score2 = score2 + 3;
|
||||
} else {
|
||||
|
||||
let rock_win: Vec<_> = ["3", "1"].to_vec();
|
||||
let paper_win: Vec<_> = ["1", "2"].to_vec();
|
||||
let scissors_win: Vec<_> = ["2", "3"].to_vec();
|
||||
|
||||
if &rock_win == i { score2 = score2 + 6; };
|
||||
if &paper_win == i { score2 = score2 + 6; };
|
||||
if &scissors_win == i { score2 = score2 + 6; };
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
println!("{:?}", score);
|
||||
println!("{:?}", score2);
|
||||
|
||||
}
|
||||
|
||||
fn main() {
|
||||
let input = fs::read_to_string("input.txt").expect("fuck me sideways");
|
||||
let result: Vec<_> = input.split("\n").collect();
|
||||
|
||||
calc(result);
|
||||
}
|
7
day3/Cargo.lock
generated
Normal file
7
day3/Cargo.lock
generated
Normal file
@ -0,0 +1,7 @@
|
||||
# This file is automatically @generated by Cargo.
|
||||
# It is not intended for manual editing.
|
||||
version = 3
|
||||
|
||||
[[package]]
|
||||
name = "day3"
|
||||
version = "0.1.0"
|
8
day3/Cargo.toml
Normal file
8
day3/Cargo.toml
Normal file
@ -0,0 +1,8 @@
|
||||
[package]
|
||||
name = "day3"
|
||||
version = "0.1.0"
|
||||
edition = "2021"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
300
day3/input.txt
Normal file
300
day3/input.txt
Normal file
@ -0,0 +1,300 @@
|
||||
pqgZZSZgcZJqpzBbqTbbLjBDBLhB
|
||||
wHptFFsHttHFLMDQDFTbbj
|
||||
fVfvsstwPHwNwfNGfHWRSnlpClcJzCWCzddSrddg
|
||||
bdgHbZJHgMHgJgJctDtVssVcpFtq
|
||||
rNNQqBSzTcBPTDsP
|
||||
GWNNrhGnNnWNzRfnRQRbhCdqHMbdmbZddbmCmd
|
||||
BSBDzrSwrqccDDwbfcBjsRwggClslTRWGWGMFlsF
|
||||
dnhVhLJtzNZdgCRlsTGWCRJG
|
||||
ZHZdNzptLNtPhPdnprPbbDBrSqrSQPjbqD
|
||||
rlSwlrGvwTTSwSggCJGQJdhVgJGQ
|
||||
jcrHrMWfNHNzQgVH
|
||||
WbfjmBMrBrrmLtqMbwwsPTvPpwvBPFPsws
|
||||
NRNcHzbzbMRcNPjPrrlBPlbtBl
|
||||
CZwVCCpWggqprwtlHlssHtPr
|
||||
WpmLghCVCqCnmVTLnccRQvvQQHDhNQzzzc
|
||||
NvGTmNGDJsrCmCWPHpCP
|
||||
nqfVfnFQnZQfFqzMZBPtppcBPPCBptcrbF
|
||||
fhRSSVfqMZZhMnQfjVzShNNlLvldsNDdvvljGpllDT
|
||||
JGRNWRGJbGmCGRbLmGpqShhcQpQgCcncScSQ
|
||||
FFdtjvvpvVFnQhhnQhgf
|
||||
ltvjjtjHlzBtWRmNPLZRHLpH
|
||||
FFCJFsvgLsjLgWzJFWJgGwBDbwnbwlDddqffnjnlnd
|
||||
pTpTMQpMZHQhZQpHPZMmTMlwhDNNddbnDqdDwwlbVNVd
|
||||
SHpmrHPZHQpmvFrqsFvgCsRq
|
||||
TtWpWhQlVZrVptJhtrtdbLPDPbjFbCCWCvFFbLSN
|
||||
zMGlnlsgSSvjjGSF
|
||||
msznlgcwMnRwznmBqTZQJrddhfQJtBJtZQ
|
||||
mwTwLftmqqSHWfCfLHjWftBthNNNVrlcFRVNrNrRTrMgrRNg
|
||||
pvJPJQPGPPzbpVpVlMBVchFl
|
||||
bzQPQbQQdsDZPDGJnBGnPGnjHDttqqqqmCjftLCmWmfftC
|
||||
ZNpfdHcccTfdwfMFNjBttMgMbBnvlvjBmB
|
||||
QVPsGzhbszRLRrgvtgjWgljlRtgt
|
||||
VJrVLsSrzLzGPChVGzbrrfpTSHFfDDHSdpZFfHpDTZ
|
||||
NPpvDbmbsmdbNvQvDdWQpmWSnnQCLBnCcQSCnnLlwCBlZz
|
||||
jggrtGTFhtGfjhDVjrjgMftFwnZcwwBCnzzVwBBwSZcVwLSw
|
||||
JfHftHhgftgFJWPdPDWRPDvPJv
|
||||
ZSLLZJGglDSVNDGGGgGgngGmHrfLzmHvvjfjwLhHvLfHHr
|
||||
QqFWszFMTQFdFPMqBmWBHvfhCwCjhHff
|
||||
pTsdppTMPtqqdbnlNVzJVbSSnbZR
|
||||
gBqDccrrJDwmpTWHHTdWMPWWZFHF
|
||||
RNfnfSwRjlLSWjQMHWvQZtvH
|
||||
GRLbnzNnzVRLCqhwzwBmJrmc
|
||||
CcGnZGnGlRncsspmFmmcmGRJJzCDTzjLBSDfqjwDDzDLDB
|
||||
hHrNdPWhrbPdhPgVWvvrgWdfwjfNzSqfqjLqzfBTzJzJTz
|
||||
HHQhhvMWbbdRswmlsmwsQc
|
||||
rrwhpZPrccRpQdcFDJNqhtqtqMLhqfMh
|
||||
lTtTllgbzTlJsmDMvbLbsf
|
||||
VVWBTgzlzgGnngrtQRQRtCtwZRQB
|
||||
HGnGvVdLhlFcmvPWmT
|
||||
jwBLqZgjrtjqmFsQTscPQs
|
||||
ZBNZtwLwztLpMrfZBLMdbdnfSRVVfnGbnfDVGh
|
||||
LmBBBzQrBgBhmmggmtdVdhJNMHNdhsHNDd
|
||||
ScSZbRplCcMnSpvCfCCZcpPwtJPNtHPHNVVNtPddwlNH
|
||||
CpvpZGfnffSpnvRSSbcfScQBWrMWmjrmFFBzTGQWjMmL
|
||||
sljSjSgsjcCLllsjVgSjCtspQwvNNhdFwFQvwpbtmhwhpN
|
||||
hDqqWzGRHHfRrJnrWrfWfHBdFmBFmBbdBGBpwmFdFpww
|
||||
TDnDHZrWWHhTjPClClSP
|
||||
wGNQGQDGjqqmwHHs
|
||||
MWvvrzgfsdWsvMrSdqJqcpgHgnqLFLnjpH
|
||||
fvsPMsPdrTZhChNDhbhPVN
|
||||
sbMgDDtttVvpMtcJsgcGGBBfGLBSLclQTGPS
|
||||
CWHWzhhRRHjqRmSGPfBSzJfSBnBB
|
||||
HjjRHWFWhRRwHNmCCRHhhFdNDNrdptMstJvsbMDtVptd
|
||||
RnSwRsLsnSswjDDDBJPrJv
|
||||
cpzCzlczHTJVQhvBQlDVDj
|
||||
WmGzqTmHSsffqqnJ
|
||||
vQSPHMwpmpQMLGfTPVLRPRVP
|
||||
hsWhnncsJqbGjGfcfBMMRR
|
||||
sqdNWqqghbsJslgsJqgWllMWDppSvNCHQHDSSHrHrHCSvvCQ
|
||||
ZWWnWMmmndQZmffcdZcmssQqrsptVwwTtQHTCTHH
|
||||
SvvrPzvvFDzGzTszpGGwHT
|
||||
vrRLjjrPhLjrjPDSfdcMZnmdcmJcfcRf
|
||||
HpqWhDJjzmcTSbmMBVBb
|
||||
nCzfLtFnZZrcbcVVfTBfsc
|
||||
FtRFzgrRtnRzrFwzDjljpjgHNJDlNlhN
|
||||
gtNRRSSrRmjshHmm
|
||||
PQDMwPwMppcQQcvCFlhLhGmjflctlnHGjf
|
||||
QwDMFFdtwFDQJZZZNqSqJSqBgBqTNJNg
|
||||
cddzbbzQflTDcDfRbcfbJVsplVsChNghHNsSsVpn
|
||||
FBWFWjFFCjWPBSPPJsVpppPSVH
|
||||
CrCwvjWvmqmvrBvFwZRGQQDDcGTcfbddZdRc
|
||||
ZBQqdGLFmmzDmTZz
|
||||
PvrVMvGgWmwSmllglS
|
||||
NrfGnvWWPhfpspsGvLJBsFBbqJCbdQcLBq
|
||||
DrwTrlfGThhQTpDdWSWgdgwLLgBSZH
|
||||
bqbPRVRmzJCLWSgCzCLH
|
||||
jRtbNVtNjNqRqsJtbjbMDQHQGlchfQpfsTcHpGHr
|
||||
tMnRcnpDcZtpQDSCCsGGHvcGPGqGsr
|
||||
mzJmjWJNlbfmbhzVCCPmZrCZqPGCgZ
|
||||
JWhzjJBdWnMLZtSBTw
|
||||
tvdLttzvtHLztnQpssdTPbMqbqMTdTss
|
||||
jhSRGNjjSjhSDCNhRgRgclNjmfZTPnbTMqJJfqqsbMflTfMs
|
||||
WnCjcjDRCChSNSCNDjNhGVDtQvVLHzFrpFwFrHFQQwQpzp
|
||||
fLbLLLLQhVPhBVmDwmCfwsdwwDps
|
||||
GNtctFTSrrJqGGpHFcTJFTwsslwmlmWsdsqRRCmqwdWs
|
||||
ppctFTTSgHcSrGrrTGFcrrnhhQbPLbQZgzLvQQVVvZvLhv
|
||||
mBBWnnBbBCtssmRThRDllR
|
||||
wfwFQcpHFpddFrwpGcHSHdcjQZZlqqDTTjZqssRhWllssj
|
||||
dWfrcSGFpgrSzFgMbCPNPLtCtVMV
|
||||
llLlGLJJMjJMGVSvVMSLRRHvjCZtgZccttnmbCtdCcmCCztn
|
||||
sBQNqPhsrrqrrwrsppsHswsZcmnNCzdZtbgntcNgcctnCt
|
||||
WWFBBsPwpWPwBBHpFFrWGRMRLlJfJVMJRJLWSJ
|
||||
vgMvQnPMntnSQPSgMvSMpNJfJDNNRpfZmGQmbDND
|
||||
HlbjHHBLjCHGZGpfJLpfwm
|
||||
qdHWqBbbbjrTzdqFqssvtPMSSFFg
|
||||
TGDfDHSgtTzPPbnCtnNtVn
|
||||
WQrWMFpMWMQbCVNPRWVWWv
|
||||
pdpMMrhrprQshlMFjZpdjZMgmlGJJGlGDBmgmHgmJCSBHG
|
||||
zWWBjZZjWPFFPPnBCVdsqmnCdSLn
|
||||
rJvpbvbpGgTGrNJGGpRRhsCqSsLhnsmTVnSLTLHh
|
||||
gNNNJDbpvGNfvNSDPPWQWWPZZWtjlQfc
|
||||
RRVbWWWvvZVWmsFSsDNbHsDSsg
|
||||
CrTwJQJpJpCCwvlJQTTPsfzDgfwNhszfszFhzFDh
|
||||
ttQJtvjpPvcqTllJTPtPRGMGRGLWdVZLVZjWdMjj
|
||||
NnPCTQWMMQNNNWwWnMzpHczzsZcCscddHdGs
|
||||
mqRgqqVlLgqmfVzcGpzzSHGZcgcz
|
||||
tjmZjZmhqftlJRJhlTMPTPQbrPBBWnhnnT
|
||||
hvTQqpvTqjvhpjnCqmCnSDSFDWFFLSSSWDnSVL
|
||||
tZwGgsfPcltgcZltRgNSDSSSSldmWMLWFVHd
|
||||
GrZtwRPbGwwPcGRsZGtRtgQJJhCjpzmTBTvJzJrjvzQp
|
||||
rwmwqDWwfDtztnFGBB
|
||||
LPdpdVcdPGvPVgZsPtlhTTtthHBhHF
|
||||
dRdCjvpCRpjvCMZgvLgRVJJSWMqmbwQJbMWGWQNbbQ
|
||||
CMCcMcDGzBGPmBmznTNbnGbrswNTwTvN
|
||||
SSHVWZphqWWJJzNsbnFwFVNjbz
|
||||
flLQqHzzgtQdcDRB
|
||||
mdzvFtllBgFttGnvfMwMVRRZCThSNZVhMd
|
||||
pDTrDHjWWJPqjDjDSMqNwSZRZhNSRNCZ
|
||||
jpcTpQPWLLpDTLcTrPjPDcjzzFLFzvgLzlzfvGFgfmgFzF
|
||||
fQVVPzBpFVVrtrsJ
|
||||
PldSLNSmWwMCcCMMcCNN
|
||||
mSPlldllmPdRnLRwmbnLwmwvTjBTghTHQjfgjpZHpfHHfZbZ
|
||||
pmfMcfprMqMrZZJcMZMGWTsFCVCTVPPsVTWCGPDP
|
||||
vrvvvLRbBNNBbvBbjBHbQhgDslPTWsPTlFDsFTFwTWlDVQ
|
||||
hgjznNBjHHgrhRHgrRLRnRfSSJmdqMfffzqJptdmmmdd
|
||||
nRnPlCRPWPMFqwPLwq
|
||||
tBGfbSbHtBVQgrbrqfTFFLvTNLLNGTGMLdws
|
||||
bgHVtBDtqnqqlJRD
|
||||
SdSJrHssFBSVsNtMMdRWnTRhRl
|
||||
vcvfDvgvcwvFRlbnwWRlMhtn
|
||||
DDDqcqFZQPgcgcfvDjLDfVrsSVrHBLJVpLpCSppGpS
|
||||
gJGTFLTdrpLdBcWBvnllvlMvMC
|
||||
RRqbbQhwNZZwQRPrSZWnvHSZWSvSZC
|
||||
fQDNRsrsQzfbDrbsqwdtpgJVjdJdpVfJFLFF
|
||||
DzWqFvqpqFSCSzGRGmwfntGjmR
|
||||
cbhZNJQBtgMHJbJcNcrmfhrRrswmfRwnVrhG
|
||||
bJNgbNdJBBPMHbcMNMWWvSFpDLFvCStqpLdv
|
||||
sLsHTsTbRLRwqssHwHjFrPDwJDppzFDJmmcrPJ
|
||||
BnZGBlMZnQSgSnvVSMmJzPDCzFcrLPPJmpDG
|
||||
BgBffVLhQLgvnBRRssfqdfHbHdNT
|
||||
HRPVmjqBqVjVRRPmcPmJjbDgLDDshbfRLlfbfLbhlL
|
||||
rtTzSMSMFpTzfgDzzgsLfLHZ
|
||||
rNpGpSSHwMTrrdHGNtTPmVjnGGjVjmBGmmBjJB
|
||||
DBqDQDQHSFlHsFnN
|
||||
MfLfwwLMWGLrWMMnpSlsnGJJlbFVjV
|
||||
gRhMZzhrFLWQvTPqTPcvvh
|
||||
NwwsHwtnFCtzcPdbvrQbBqclQq
|
||||
VmZLLTLfVpwMBrVVqqMM
|
||||
mgJDjTgWgLWDppJZJTWZmSRzCtRHhGGwHNzshGFFCSRt
|
||||
RGCCDRdFZdRCMzzGCDGCmGHMfqbNNNLQLfFqnnqnNQqVPnQn
|
||||
glgcrwrJjJccBwdSfnSnVqrqQVVnNq
|
||||
jvtBsjstgstjltBcWzTGGddHTWDTZCmDGm
|
||||
HJHGZZHnctSSDhZtmZ
|
||||
MjjQFSvQlRjSdRqdqvVSqCCPtpRpPPDfDmfPbbpphC
|
||||
SNsWqMNvFFqdqVMgwwBHrGHnHgcWTJ
|
||||
jBcbjSmSBbbCcPcMjmbzFPhDMDfrfGRhGQRMnGQfdrDh
|
||||
wHlqwlqpwZqcwVlqHtJVJLTdhndTDnhffftTGDTTDdTG
|
||||
JNllcwpZZlpZJjNzSzSCNjSmFN
|
||||
FhwRPzmPWmQQmwFPGGMGGRPnRHHVfDbvJlvDlHSvDTDfVHbD
|
||||
NpjcpCdqpZZvwvJVfDdDHT
|
||||
twZtqrBrBQBMBPGn
|
||||
fBFGjbLLFblmbWFmVfBvrvMdMdncnrdNbdQNTr
|
||||
shZHHRZhtsqJZhHhgZzgJzVJrrSSvrMdMQrNTvMNJQNrdn
|
||||
szHwgtHtwPzPLpVFpVPLlfLC
|
||||
mrsrtrWjljjjvwwgNnZfDHJDqTqrHL
|
||||
FccMPFQcpczpdMPhMqJngNfqfnFgDnnFfg
|
||||
BdMpdcDPcpjBmlBmVWts
|
||||
VvwTTlfVlblwwSsbfTdzVqjhzVjpjjqjqpzV
|
||||
rwCWFGmJrNCmMRHmwRFPmHQQhBLBzdLqBjhLBHZdQB
|
||||
rFwDrMNRJDJFPRmCvcTcbDsvstTgfTsg
|
||||
zhRzdRRChHCFGPDRvWRWvWvHpZpscrrmrZrJcmspJmJZFfpM
|
||||
wQqLtQLtnjbjVnVjbBgjbBnbMZMZJlVpZfJprsMprmGZZZml
|
||||
jQjjNBLLwjtQBtwwdGGDCHhNzzWDzTPD
|
||||
DzzQnCMMznFnCdnFFlHtlmhVRtmVVmVhSF
|
||||
PWrPPRTfLJJtfbtBfV
|
||||
wsrggZsTwTTWGvDppQMRjjMCjMZp
|
||||
fTjzZVTlbffCMvjgMpSFWBNBWSFsvBsNNccF
|
||||
nJdwdPRQqGqbGJQbmmQQhRSBBBSsPPHWNSWFBtDNBsHH
|
||||
nnQhwwQGdLqqwnZbpfjMfzpzLbLj
|
||||
jgTgCwgjMgGLhvRrHrHwhvhV
|
||||
bqSsSsZFZBlFsBlTSppVvVvnVHHvHnhp
|
||||
qFlbPbFFsWFsBlFWbsbsmzTcMjLmtfcCmcWtgzgm
|
||||
rrHbfBLbfMcghcmrcCzg
|
||||
RDStDtvdZRQdJSQWWWdvFSgNvVcnghhmnnzhVPhczPch
|
||||
ZtJpJttSZStwtttFDQmLGTlqMLqGfwTTGLfTGG
|
||||
MrfLWwfBwgghvLmNvmHHHGGQHQSSscscVvTV
|
||||
dDjZjDPJtFRzjdTTsqVjTpqHsGrT
|
||||
JbFtlbPRJCzffBrgnlMWmg
|
||||
ZFsbbVLLdZppLFpcJjCCQJlGcQCMZq
|
||||
TwRtRBdBClCTGlcJ
|
||||
rwBvBzDvwNNDHLHzfHssdHhS
|
||||
gdhgftTNGTbpqJqjjgRJ
|
||||
lcBcMLFzMzLFMzFzPjRBQjQPQpSqhpbp
|
||||
mzzmZHZZnZwLhtGfddVsNCCnGG
|
||||
lblbPGSGrTLRwqZLvP
|
||||
FffCCFzFCWzzvmjRJnRTnZZNJCTqCR
|
||||
gdhztVjhHMsGvrGVVB
|
||||
ZJZjJGHZhDJRFJHjDZjhPNFgFmrnVmgVVzVBscnzSg
|
||||
bwlWtMwtbqdCvlQCplmsqgnVVScnVgmnmzNs
|
||||
WMWltTtvvCdwCCRPPfTHGcJDfGZL
|
||||
svqQJLvSSZrZZZCFCBDPDCMTDpPwMWDPCwRw
|
||||
GnlnGbdldjhzzhpPDTWjmtMwPmWW
|
||||
HzVbGnnbchblbnbzcQTZBZrQrFSHvLBBJv
|
||||
MmgMmVpcRDlvbvpHJF
|
||||
GSGTLTwhwwhzQqTqwjFlbdvdbrlrbrrDnDvHlQ
|
||||
zLNNNtwGFCMsWsCWNR
|
||||
tSTDDDftSqSsTDnTtCWNrbFsNJJvbzJbvJ
|
||||
dhRdVHdMGRgPJbjNPbzgvr
|
||||
VllQmQdhRHLhhHmLlGzSqSQDDcDBnnBnqDfSct
|
||||
zBzJWZBLZNNGLsbTvLbmbT
|
||||
QdtQwfdnPdPTbsRQGhRvbl
|
||||
pgtPgPjVDnpVnDtPTFFrJJTBCcpcrpCW
|
||||
GnWMfBfdCGMbjRNpnzvvNLRNVv
|
||||
FShJDJJscwwszNjvNjNNqZ
|
||||
tJmccwlcFlFcHlPcHFfdrbBGBGfjCGTfBCPf
|
||||
GhlcQsZNQZWhpcGhwlPmqnnqnjJjLRnqzJsJLJ
|
||||
VTMtTtDTbvbMTfvdJqngjmqzdjmJjCLm
|
||||
vHtbHTDBFvffBPGwLLZBQNNl
|
||||
bDphJrpbpnBbDrdBvJdDFBMtMlfgtsFSstfGPPgggPGP
|
||||
RZmNjTZQNVHQHNGSgMsfPlShSs
|
||||
VmchTLZQLjVLjmTVmQVhTmwVrWJqbDqddBrpnWbvnqrqcnJB
|
||||
jWWgThWtgSvSSWlJtlShllPcHVnJHPbMHPcPVPbVZrHM
|
||||
fGdfRsRdNwfRQhnpcZdVhVpbPh
|
||||
fGhwNBqNjqStFqtj
|
||||
TSTBrSDlQlTDrrQclrBSLffPvcfcdVjVMGGPLjLL
|
||||
qnbnbngFGhhhPfjjVffjff
|
||||
RRWbmgpnmqlrCwwSrwmG
|
||||
mZZTsdBZVZBZLVHdFmsNnCrCVQQbWvWjWNCnbg
|
||||
QSffDGwGGrPGWrgN
|
||||
hflwzltflDpMpDSllcMDhSShdsdZQdLZZdHTssZzmqLzFmLB
|
||||
LLRJRshLfsJfWnLBTlTBlFzNrnrBBl
|
||||
qmmVwmdHqmqGHZdHbbqSScdZQTjjpTFFVBBrlDrzDFBTjFjF
|
||||
wZZwmcbvHgqTmGccmvdCLhCPJsJCPWgMLPtJsJ
|
||||
TWbbbNbJJjJbqTjtJJjTQCtnGSBndMGCcSZSQwCB
|
||||
mcfRfrcmrDRrPsdQSGZQGnsSQMnB
|
||||
DDRLDRDFPpgmpcgPghpfgvRTjbhTVjHljJjzlVzVTlbHll
|
||||
rPlPrPllBGgJgdJfHgfjJt
|
||||
pppZVfFDWssMfFVVFMpsMMVmHCRLdcZCRtvLRdCtCJdHRttH
|
||||
mDMfDFDmnMMmsMFznDFpzswbNbPGwwSGBrGrhrTzThSl
|
||||
qDNFfCCNWLfWWhqhDGPMMZVwgpCpMbJwJCvV
|
||||
RdstRRvdtmtPVpppVbVtrp
|
||||
zzncSRdsTdQTczQBsLvvHNhDWGjDHNLDSG
|
||||
bNNpcfJcCtNpHFsJsGGjLGzmLjLmGzlFGW
|
||||
qwqZdnQnQwnhhzmnMWjmNlMzLr
|
||||
qhwwQSwStJbHNftS
|
||||
WlfWSwDftzRltBWVlRDlsmBJPcsZPmcJnmPmFhrn
|
||||
dLQbQbvGTddTvbjQCbLbhmCrZZPPsshPPPrJZrnF
|
||||
QgFjQHHbMvdRMVllSqfSlf
|
||||
MDPJBWWPggVlPVDMSljdZNNpwjwbHZpNbDdH
|
||||
mGmzcThGrtntHhthzGctRbNRNwRNzZwfdZpjpdRj
|
||||
ThtcvvtThFcnqFQSHgBSVJll
|
||||
hVqhFLBngHVFtJjtLCBJVSbbPNNbSmfLLTSNSrrLTb
|
||||
vsdZZpvQdczlMdMvzlcvvdQprbGGTfSbWmzPTgmmGTbmmfGP
|
||||
vgRZZMgwdgsQZdMBqVhjhJqBhJtRhq
|
||||
bgFQbMMbTbQhghddFTFGnmSmsNdzHvzSSzlcHsls
|
||||
fZDjVtfZLqwpqtCfCjCjlvqScrvzqHSzszzSnczr
|
||||
jpftjCfWCjCfCRZZlpCpjRWQBRTQQbgBBTMbghgbbPGJBJ
|
||||
VZZrbBVwbbbVVvgbntnggNRJqRRNNccMcNqJcJ
|
||||
jfDPfDdGGhDGfGFPCcZQqMpRNJhqTcMc
|
||||
LPfffPHGPDjPFGWSdHPFjWtlBlwvlwBlbtmLltsmvtZb
|
||||
TTfJDfrJTSrHMcVMJDTfMcMDBQBPwnPlznPszFVBFgzFgnsn
|
||||
CqtmWNNGBPzwbbwm
|
||||
htdCthhWGtWWGNZqcZpJjwwHHHMcHZDM
|
||||
VvjQjQCZLbbSbTPpSHtFzsHzppMfzz
|
||||
DJrJWBcDcWJWmmcgGRGRGWGDzHHwzdfRHpMztMpfdFdFdzdM
|
||||
DmBgGDqJNhGcccWmcZLjTPLVLTQhPtvvTZ
|
||||
qfhvwNDQqwDGdGZZGwPTTw
|
||||
STsJgsRtJMZPjlsmdpbs
|
||||
SCTTHTWHNVfHQqqq
|
||||
djCDgllgjJjDRRNgRlDdBgtpQHfhQTrLLrGBtzrQhpBH
|
||||
SVcsMGcPSbqSPmLTPHHQTHrftPTr
|
||||
VcWnsScqSScWcZbMMcSVGbNNlgDRlgCCNgwWvvRJdNdj
|
||||
mgPllfRgvNmPGQGGsmQNWlpFtnBPFShncTFShtFShnjS
|
||||
tLLzMJJwwbbdrrMLqLVJMzVZFnpTTFpnCSSpShCjBJhpThph
|
||||
HMdVwbbLMbDMDVlmDsgtNtNRfgsm
|
||||
hNsgsgzNZRghPhZBdssPQfzDmQSmmzQGJWzfCDJJ
|
||||
bblVHvvHHTljwFCfGrvmfmmJBmGQ
|
||||
THMMFVwqTPRdZptMBP
|
||||
QvcPGSvQLjmcQWSGWWGjLCNhhqpCdBCNCbJNdVWpCh
|
||||
rwtLlzZggLHnHlwHRDdVqBbCdqqVVhbqVnVh
|
||||
zRDzwRrwlRlRTgrDtllmQGLcPjGLccFmTcGSQc
|
||||
RWlgQlbcWBwzsJggTfhh
|
||||
GrnLjHLjmLjjGSLjSDmfJJpfThhfSWJPqJqhwz
|
||||
vLvDDnDNrCVjCmNDbFlBVZdVRQlRbWcb
|
||||
mTlwFngwmlLlvsmLHmHsLJhJFfcbdpbNcjCNCbpccb
|
||||
tZRzBRzBBRQzPqGRqrVQtjjfbCMcfMfCMMjVjfCJNd
|
||||
SDBBPtZZTdnnwSvg
|
||||
nddNNMMPNBnBNnBTQSShlSHghlDHBr
|
||||
VcccVmqJsJsjlTmzTDggmHHT
|
||||
VqLtFCqFJfVtVjsNgPNNMMWNwgtNvn
|
53
day3/src/main.rs
Normal file
53
day3/src/main.rs
Normal file
@ -0,0 +1,53 @@
|
||||
use std::fs;
|
||||
|
||||
fn calc(input: Vec<&str>) {
|
||||
let mut vec: Vec<_> = [].to_vec();
|
||||
let mut score: i32 = 0;
|
||||
let strinj = Vec::from(('a'..='z').chain('A'..='Z').collect::<Vec<char>>());
|
||||
|
||||
for i in input.iter() {
|
||||
let string = i.split_at(i.len() / 2);
|
||||
|
||||
string.0.chars().any(|c| {
|
||||
if string.1.contains(c) { vec.push(c); };
|
||||
string.1.contains(c)
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
for i in vec.iter() {
|
||||
score = score + strinj.iter().position(|&r| r == *i).unwrap() as i32 + 1;
|
||||
}
|
||||
|
||||
println!("{:?}", score)
|
||||
}
|
||||
|
||||
fn badge(input: Vec<&str>) {
|
||||
let strinj = Vec::from(('a'..='z').chain('A'..='Z').collect::<Vec<char>>());
|
||||
let chunked: Vec<_> = input.chunks(3).map(|x| x.to_vec()).collect();
|
||||
let mut vec: Vec<_> = [].to_vec();
|
||||
let mut score: i32 = 0;
|
||||
|
||||
for a in chunked.iter() {
|
||||
|
||||
a[0].chars().any(|c| {
|
||||
|
||||
if a[1].contains(c) && a[2].contains(c) { vec.push(c); true } else { false }
|
||||
});
|
||||
|
||||
};
|
||||
|
||||
for i in vec.iter() {
|
||||
score = score + strinj.iter().position(|&r| r == *i).unwrap() as i32 + 1;
|
||||
}
|
||||
|
||||
println!("{:?}", score)
|
||||
}
|
||||
|
||||
fn main() {
|
||||
let input = fs::read_to_string("input.txt").expect("fuck me sideways");
|
||||
let result: Vec<_> = input.split("\n").collect();
|
||||
|
||||
calc(result.clone());
|
||||
badge(result);
|
||||
}
|
Reference in New Issue
Block a user