mirror of
https://github.com/bertptrs/adventofcode.git
synced 2025-12-25 21:00:31 +01:00
Add solutions to day 6
This commit is contained in:
6
2016/day-06/Cargo.toml
Normal file
6
2016/day-06/Cargo.toml
Normal file
@@ -0,0 +1,6 @@
|
||||
[package]
|
||||
name = "day-06"
|
||||
version = "0.1.0"
|
||||
authors = ["Bert Peters <bert.ljpeters@gmail.com>"]
|
||||
|
||||
[dependencies]
|
||||
624
2016/day-06/input.txt
Normal file
624
2016/day-06/input.txt
Normal file
@@ -0,0 +1,624 @@
|
||||
iyeajeby
|
||||
qengiuoe
|
||||
wxzardgo
|
||||
jciguemn
|
||||
zcampkps
|
||||
kiqjpjqb
|
||||
knwhoxlw
|
||||
iaxxpjhe
|
||||
kgrgaixi
|
||||
lciydajs
|
||||
svugtdwe
|
||||
nwailbqu
|
||||
cbkwwxvt
|
||||
lqjyrawh
|
||||
jylmtlzk
|
||||
firecpyg
|
||||
xegtcvvx
|
||||
jllqqzeq
|
||||
hggmnxlc
|
||||
pdmfuqlx
|
||||
hnbksbkl
|
||||
pmjmiqti
|
||||
gpmuvcsh
|
||||
tspnxvnm
|
||||
hghwizhe
|
||||
sgokeybb
|
||||
jtphckcv
|
||||
usypmmzq
|
||||
irlfaboj
|
||||
prgiqvil
|
||||
nfqegpjd
|
||||
aivwwkix
|
||||
xeljyzjv
|
||||
mrdpqlzc
|
||||
metcvpvd
|
||||
ifizfkgl
|
||||
uznvqiqw
|
||||
uzylkeui
|
||||
obmqhlan
|
||||
vaoivkeq
|
||||
wvlbwfaf
|
||||
ntbgtbpz
|
||||
lbuieiea
|
||||
rljyfeop
|
||||
rynkdwiq
|
||||
hyqpjwzl
|
||||
supxlsql
|
||||
bntmjboc
|
||||
qntfhain
|
||||
xxtjctjz
|
||||
qppakrbj
|
||||
ptnnwmlg
|
||||
pucuqrpi
|
||||
ensluhxm
|
||||
wtnabsej
|
||||
hvnozkvx
|
||||
dhxgysdk
|
||||
qdizyrkg
|
||||
vtuyxjky
|
||||
lxwcyfxr
|
||||
xoyphxmb
|
||||
ltylucct
|
||||
oaawvjfa
|
||||
qbjmdcap
|
||||
raqhkkbe
|
||||
uqtxpvhj
|
||||
pddzoucq
|
||||
axfbgpvj
|
||||
eohksqcm
|
||||
jtmmkovb
|
||||
paronxgv
|
||||
gtxnqybz
|
||||
qfsobvxz
|
||||
ywrnogwz
|
||||
ytdvpmzv
|
||||
daeappko
|
||||
zgjdatzf
|
||||
psrfofvi
|
||||
uobknckb
|
||||
rvndwdgs
|
||||
oedojfqv
|
||||
shxmutcm
|
||||
nigdxgrz
|
||||
ngwvdair
|
||||
wexxkvwn
|
||||
oqmrjlcr
|
||||
vcbmxvyb
|
||||
ekdfdzch
|
||||
klphcryl
|
||||
bbtobqqo
|
||||
wupuvqio
|
||||
hwiufjpk
|
||||
rckjewzp
|
||||
vhgzdtil
|
||||
qrvqytfe
|
||||
opolrgwi
|
||||
nektqhbg
|
||||
ynubobwy
|
||||
cqnysvzf
|
||||
muqrlihy
|
||||
ncbeeuur
|
||||
hxsvpoug
|
||||
kacsofnk
|
||||
vztkoicu
|
||||
smxiuykn
|
||||
sgnmdqmw
|
||||
sfsxxnds
|
||||
iwquujxr
|
||||
fwssfvfw
|
||||
qyoswzsm
|
||||
kvfvizgu
|
||||
fmewmudq
|
||||
mvtekgjn
|
||||
kkffshrt
|
||||
jzbkyxzf
|
||||
beszoylz
|
||||
lnhmbwae
|
||||
tijfkcrt
|
||||
culovluh
|
||||
jrgtbxma
|
||||
yqtlarnm
|
||||
rdlxlplt
|
||||
vzgphnpi
|
||||
igpbfrrd
|
||||
yqdgvyke
|
||||
juhzerjo
|
||||
kfwlvhag
|
||||
ysznuuey
|
||||
turxgyik
|
||||
iqgcxxpa
|
||||
tjrmtkjk
|
||||
ywfcwvqp
|
||||
ozmguljj
|
||||
maxegnqi
|
||||
vavydxwd
|
||||
dhlckjra
|
||||
omvdoafe
|
||||
rvzejiol
|
||||
rsnpjser
|
||||
nejognkt
|
||||
agkavzki
|
||||
uzskztny
|
||||
knvzbkff
|
||||
iiuhrzsp
|
||||
amxryjhv
|
||||
yqxdgdaj
|
||||
tpvellfc
|
||||
dqutbibf
|
||||
fbbrpcbg
|
||||
shxlcvmc
|
||||
ociooedg
|
||||
nedlhmfo
|
||||
ohdxifnx
|
||||
mqhbpyed
|
||||
tauomzjy
|
||||
bkooiesi
|
||||
xtukgdec
|
||||
mygazipf
|
||||
wkvecylo
|
||||
tlejwzcj
|
||||
rcpygkbi
|
||||
uihidqdr
|
||||
lxwthely
|
||||
ywyoahob
|
||||
zwjrveex
|
||||
eqahofbx
|
||||
mvipdaql
|
||||
zccdioga
|
||||
gttnacns
|
||||
urajevul
|
||||
uhsdjkhm
|
||||
cjbpznua
|
||||
tyfvodhw
|
||||
feadmwyl
|
||||
cjmccfcy
|
||||
uawxsuyy
|
||||
xzzidfrj
|
||||
slhgapvb
|
||||
tbdwntwx
|
||||
bvspfozq
|
||||
pkkwgooy
|
||||
frnhifax
|
||||
sxfkbojn
|
||||
ffnzlqda
|
||||
pbtbewtm
|
||||
mivpqcyc
|
||||
gztezasy
|
||||
jlfdrmou
|
||||
xjmazeef
|
||||
lgcaevtl
|
||||
piidoxbi
|
||||
iczlosyt
|
||||
egszahwu
|
||||
cmbybzvi
|
||||
orczduhd
|
||||
hzorfhdv
|
||||
yptggtmu
|
||||
yfsmednv
|
||||
ajawzgpp
|
||||
niicgavl
|
||||
mmdpsogr
|
||||
wkufsuct
|
||||
yboinvnc
|
||||
lmwbrqmb
|
||||
rrsfhics
|
||||
xguvmcmi
|
||||
yldifule
|
||||
laycxgaf
|
||||
jtnizmxf
|
||||
qrbpqznc
|
||||
cpplgbsm
|
||||
xzkwttnj
|
||||
axjxusuh
|
||||
nthcjcqn
|
||||
zjkdjlcz
|
||||
uulqjmfq
|
||||
djqlzrcb
|
||||
ftxhzuoq
|
||||
bfrzrdtn
|
||||
fvovpzts
|
||||
tloyyqoa
|
||||
spupkgwb
|
||||
ishhbwok
|
||||
spyfzbsj
|
||||
bvvnfnxx
|
||||
iuectyxc
|
||||
xbbjridq
|
||||
drzfvsrw
|
||||
gokuvwjf
|
||||
hhkmgqxf
|
||||
epijynaj
|
||||
bfxdnibq
|
||||
pjoovmhf
|
||||
izbgldjr
|
||||
rvxrhjxa
|
||||
blhhorwy
|
||||
xwmobyph
|
||||
pfoimsbl
|
||||
gprwonid
|
||||
hfwmazfu
|
||||
dudhehvt
|
||||
nbekhgbg
|
||||
qbwklpvg
|
||||
yemjyobm
|
||||
vmocaztb
|
||||
xkwklord
|
||||
tjooucsf
|
||||
qowresxh
|
||||
cxeapuvv
|
||||
zmlzqivx
|
||||
fryanflf
|
||||
kxcrserx
|
||||
jtoqtooo
|
||||
axrtkjyo
|
||||
fwwzdsbx
|
||||
pyphszfp
|
||||
ekdcnrgx
|
||||
zyrhxcvc
|
||||
blcqplmo
|
||||
wnsiistm
|
||||
slavtfip
|
||||
sixawglm
|
||||
sxpjnpsa
|
||||
sfwmudzt
|
||||
kcpetkcw
|
||||
iqfufsws
|
||||
wdfbgvol
|
||||
muvtnxzg
|
||||
otgycshn
|
||||
gddbabma
|
||||
swksjxjx
|
||||
hnfcsnir
|
||||
tmcnycfi
|
||||
lpvuwehn
|
||||
htyogany
|
||||
rggezmhh
|
||||
guzhwmss
|
||||
zoqiscdy
|
||||
dqbtvyrb
|
||||
wfnymsai
|
||||
klfpdgvn
|
||||
ihqjdope
|
||||
dudllmty
|
||||
gpbkmwtd
|
||||
tjmtvjpk
|
||||
sjnkfrsk
|
||||
bgruelqs
|
||||
repdjhre
|
||||
flxjlvah
|
||||
lkpnbajp
|
||||
rmkqdjpx
|
||||
enimddcn
|
||||
nzowveei
|
||||
cohzzkee
|
||||
sxfvyqwi
|
||||
vlztaixp
|
||||
xgkrlsyh
|
||||
eaurshic
|
||||
kifvzhsv
|
||||
dxfsexup
|
||||
fyqqbzgm
|
||||
bnxsgjxg
|
||||
ndbbkscp
|
||||
xyjhzqel
|
||||
eyanetmo
|
||||
quakpmsr
|
||||
kqfeprrb
|
||||
hhsvwyse
|
||||
jjvjivng
|
||||
zkeiinwn
|
||||
adibxest
|
||||
zjzrkmxr
|
||||
kceozeud
|
||||
iknfusda
|
||||
gqmuepbo
|
||||
ccwltods
|
||||
smaurfwy
|
||||
yojrrudk
|
||||
akygvwyf
|
||||
dermnpvn
|
||||
bvfvjskb
|
||||
pcohqoyu
|
||||
odyqfyhy
|
||||
nqgepwqo
|
||||
zijtbqgd
|
||||
czfgqsmr
|
||||
fkgeoorf
|
||||
udvncboo
|
||||
dwxgrgck
|
||||
vqhthccp
|
||||
gvkfkpwr
|
||||
pquhsiha
|
||||
hlpqfrpz
|
||||
aeirprab
|
||||
bouoglph
|
||||
zwyimnhu
|
||||
zpculwdn
|
||||
mokpnpeq
|
||||
hfgfjamc
|
||||
osgncdnf
|
||||
ejfjqwql
|
||||
tovcchzu
|
||||
wwmburym
|
||||
mdonvwnw
|
||||
wxjysrlt
|
||||
cjrqrnqv
|
||||
okzeilge
|
||||
egunoujn
|
||||
dlbaqemd
|
||||
qrdyabya
|
||||
vaaxguwe
|
||||
hjqwytxz
|
||||
xtvmgdaq
|
||||
noijjgft
|
||||
xgysigmw
|
||||
urbsmwdk
|
||||
bjnerghw
|
||||
aspvghjp
|
||||
hgciumho
|
||||
ivjihqed
|
||||
wtvkobuw
|
||||
zhtyhllg
|
||||
jlxjwjui
|
||||
xkmxhoek
|
||||
rydzmqip
|
||||
ydonbzvk
|
||||
byeoptyo
|
||||
gpnnqxrb
|
||||
hyzplaie
|
||||
tbedyaph
|
||||
zgqhqnmg
|
||||
tdepvaex
|
||||
wytwmgkr
|
||||
qsmuyzys
|
||||
fijlauqj
|
||||
wyqylgam
|
||||
lbwxnluj
|
||||
nmecxavu
|
||||
ofktnhfb
|
||||
lhjgzkjr
|
||||
ucctfetk
|
||||
mggvgkmu
|
||||
yzmnbbhe
|
||||
kcnqhuam
|
||||
rxiwfblx
|
||||
vfufzjou
|
||||
cpynrovg
|
||||
qdwshnpi
|
||||
pcrxywto
|
||||
ozhzwpwa
|
||||
zroxmvfr
|
||||
fpipfjvu
|
||||
leyiafxs
|
||||
oacgxszs
|
||||
voebeyvn
|
||||
ixkqabkl
|
||||
lqabfhtd
|
||||
oewbtlgc
|
||||
vdlaniii
|
||||
tabtkolp
|
||||
xufkdmem
|
||||
niofeqxn
|
||||
innfbedm
|
||||
zahlnzhd
|
||||
whmqyffv
|
||||
fhjascxd
|
||||
wnsktsdi
|
||||
ucdgnvkf
|
||||
fmpxuyml
|
||||
pnvuhmup
|
||||
wohfuyto
|
||||
wthjmlzx
|
||||
tkcdmttv
|
||||
ubyrests
|
||||
mkrplnes
|
||||
mglepvyl
|
||||
shqafjly
|
||||
gbpaitlu
|
||||
cesjmugk
|
||||
qnqmvnks
|
||||
kbvvlltq
|
||||
luvgtdmv
|
||||
rrrhawdz
|
||||
dthrxkth
|
||||
bglwrdgk
|
||||
apqxickb
|
||||
vnzwzjba
|
||||
reiafjdt
|
||||
qfcunhks
|
||||
dwmhshtd
|
||||
rwtwnxxu
|
||||
gjgdhwtr
|
||||
dhrwidzp
|
||||
manohccv
|
||||
jvccmlat
|
||||
txhfklix
|
||||
nczocnew
|
||||
gxlpkgqr
|
||||
vsrtxogh
|
||||
ixhtcwaz
|
||||
qfapctcq
|
||||
glvtpiug
|
||||
jnuecngg
|
||||
bktbndyg
|
||||
ceboexzj
|
||||
lsjakjjw
|
||||
oemmiqvu
|
||||
zqscwlay
|
||||
hqedlpzb
|
||||
hsrztfxj
|
||||
fjpwidgw
|
||||
abrsenrv
|
||||
qseoiuyj
|
||||
jtjtqxgr
|
||||
esczykzc
|
||||
mazmziim
|
||||
szzwzfuq
|
||||
zbcfhaiz
|
||||
uqsnjwus
|
||||
vwzqohsu
|
||||
yylbjhnl
|
||||
chqdcblk
|
||||
vporypnv
|
||||
vfhdofdx
|
||||
eztmaogh
|
||||
wlzjsgbw
|
||||
dqutunrc
|
||||
gwtpdvpm
|
||||
ywxghnkc
|
||||
alacomlw
|
||||
jfuygdcy
|
||||
zkoeauig
|
||||
abufqquo
|
||||
ncilvdgq
|
||||
guinnabe
|
||||
pdwybure
|
||||
jocsrmfp
|
||||
acwncthl
|
||||
cdnaffnn
|
||||
zyqbszzz
|
||||
azhxybig
|
||||
hibjuhsw
|
||||
tvckjxuf
|
||||
vklsqbos
|
||||
efzukhlt
|
||||
kjaqqofz
|
||||
esxcyrxt
|
||||
yocrwucn
|
||||
iodafafm
|
||||
oiakmvtb
|
||||
dmbgtcpj
|
||||
qnzrryot
|
||||
ufcbptbz
|
||||
veprgqre
|
||||
umsltfes
|
||||
bvvqhcmz
|
||||
rucsowjt
|
||||
kkbgkrxe
|
||||
fksibbfh
|
||||
tyckeiqo
|
||||
gfqurpyl
|
||||
raljmvsf
|
||||
chednohc
|
||||
gowzqrfm
|
||||
ypktqcvb
|
||||
fgiusizq
|
||||
jvdsmnhu
|
||||
esfuxpra
|
||||
uraiwlfz
|
||||
vpkulaao
|
||||
erkvbjrj
|
||||
mrhjjist
|
||||
xmpayrdq
|
||||
biqwpkrm
|
||||
lrlhkljw
|
||||
rbaglxsu
|
||||
kryywepc
|
||||
mrydxkuv
|
||||
obksnkir
|
||||
jogxscwa
|
||||
pxkzdamo
|
||||
wcywigdv
|
||||
acqicmyz
|
||||
xiqhgpik
|
||||
izubxapc
|
||||
yrzfptzd
|
||||
qmyltgkw
|
||||
dwedcarp
|
||||
oouewlrv
|
||||
izelyufn
|
||||
ehdstcah
|
||||
nylqvqtd
|
||||
ywxjkxnx
|
||||
sstceepq
|
||||
bjihzptq
|
||||
nvawrewu
|
||||
plftxhsh
|
||||
eyuzdika
|
||||
gjdyaoek
|
||||
euqeablj
|
||||
zhgjzdki
|
||||
lyygbhly
|
||||
joscwikc
|
||||
cbqczxbu
|
||||
xnhptyqu
|
||||
txvltmyh
|
||||
kwtaueat
|
||||
btpbbibj
|
||||
ueytsouw
|
||||
kfmmcyqk
|
||||
fwflotzv
|
||||
ouwyewua
|
||||
hslsjpur
|
||||
jdgrtwme
|
||||
lgelctfc
|
||||
nlxyvkgh
|
||||
xpeslfje
|
||||
adcifgwz
|
||||
gquvwdeb
|
||||
rkmzqard
|
||||
lvzehstp
|
||||
cijqaygt
|
||||
dwfzsddm
|
||||
vmwqrrsy
|
||||
aotsaqoj
|
||||
irjumknp
|
||||
altzbfjo
|
||||
hubsrgdb
|
||||
nudnkfof
|
||||
bvhvcltf
|
||||
xupumtmg
|
||||
kjfxunyd
|
||||
pjwhyeuz
|
||||
zmnxkepw
|
||||
mpzvjjni
|
||||
cskxvphp
|
||||
dykbldmb
|
||||
ymmsshaj
|
||||
gdsvrycq
|
||||
ehdvpiqy
|
||||
engermzp
|
||||
tmexxgkw
|
||||
acjslpiv
|
||||
qprqqyqf
|
||||
fbictbjs
|
||||
llaeirez
|
||||
uxoofxnc
|
||||
ukgpjtlz
|
||||
tpxwxzpu
|
||||
cuzgcjgd
|
||||
jnzxfqww
|
||||
wemyhsbv
|
||||
aslnwaqg
|
||||
aibaikgt
|
||||
hglojgqv
|
||||
larqrtka
|
||||
ozlrwpna
|
||||
pzxsdrjh
|
||||
vsnuuusj
|
||||
jswkkvun
|
||||
darbbbhk
|
||||
woeihkoh
|
||||
xdsunolx
|
||||
ymvbtrxg
|
||||
mtodxqik
|
||||
fxkcdfwq
|
||||
koivubnr
|
||||
gitldbqs
|
||||
bsjymzpd
|
||||
whaluyys
|
||||
rvaftjox
|
||||
qhinxcid
|
||||
snpkwuko
|
||||
mdgvstoq
|
||||
zzytixxc
|
||||
qsgrlmdn
|
||||
ddjqxeaw
|
||||
uilqxznh
|
||||
chazpmyk
|
||||
iivrixot
|
||||
casfxwwa
|
||||
mvjdazsr
|
||||
dnmivmal
|
||||
eayyeyfh
|
||||
60
2016/day-06/src/main.rs
Normal file
60
2016/day-06/src/main.rs
Normal file
@@ -0,0 +1,60 @@
|
||||
use std::env;
|
||||
use std::io::prelude::*;
|
||||
use std::io::BufReader;
|
||||
use std::fs::File;
|
||||
use std::collections::HashMap;
|
||||
|
||||
fn most_frequent(counts: &HashMap<char, i32>) -> char
|
||||
{
|
||||
let (mut c, mut freq) = (' ', 0);
|
||||
for (cc, cfreq) in counts {
|
||||
if *cfreq > freq {
|
||||
freq = *cfreq;
|
||||
c = *cc;
|
||||
}
|
||||
}
|
||||
return c;
|
||||
}
|
||||
|
||||
fn least_frequent(counts: &HashMap<char, i32>) -> char
|
||||
{
|
||||
let (mut c, mut freq) = (' ', i32::max_value());
|
||||
for (cc, cfreq) in counts {
|
||||
if *cfreq < freq {
|
||||
freq = *cfreq;
|
||||
c = *cc;
|
||||
}
|
||||
}
|
||||
return c;
|
||||
}
|
||||
|
||||
fn main() {
|
||||
println!("Hello, world!");
|
||||
|
||||
let args: Vec<String> = env::args().collect();
|
||||
let f = File::open(&args[1]).expect("Could not open file");
|
||||
let reader = BufReader::new(f);
|
||||
|
||||
let mut counts: Vec<HashMap<char, i32>> = Vec::new();
|
||||
|
||||
for line in reader.lines() {
|
||||
for (i, c) in line.unwrap().trim().chars().enumerate() {
|
||||
let pos = i as usize;
|
||||
if pos >= counts.len() {
|
||||
counts.push(HashMap::new());
|
||||
}
|
||||
|
||||
if ! counts[pos].contains_key(&c) {
|
||||
counts[pos].insert(c, 1);
|
||||
} else {
|
||||
let cur = counts[pos][&c];
|
||||
counts[pos].insert(c, cur + 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
let decoded: String = counts.iter().map(|counts| most_frequent(counts)).collect();
|
||||
let least_decoded: String = counts.iter().map(|counts| least_frequent(counts)).collect();
|
||||
println!("Final (most frequent) word: {}", decoded);
|
||||
println!("Final (least frequent) word: {}", least_decoded);
|
||||
}
|
||||
Reference in New Issue
Block a user