This commit is contained in:
2016-12-06 10:33:54 +01:00
parent a93c2ec7f8
commit 5eee81e7b8
5 changed files with 695 additions and 0 deletions

4
2016/06/Cargo.lock generated Normal file
View File

@@ -0,0 +1,4 @@
[root]
name = "06"
version = "0.1.0"

6
2016/06/Cargo.toml Normal file
View File

@@ -0,0 +1,6 @@
[package]
name = "06"
version = "0.1.0"
authors = ["logaritmisk <anders.e.olsson@gmail.com>"]
[dependencies]

16
2016/06/example.txt Normal file
View File

@@ -0,0 +1,16 @@
eedadn
drvtee
eandsr
raavrd
atevrs
tsrnev
sdttsa
rasrtv
nssdts
ntnada
svetve
tesnvt
vntsnd
vrdear
dvrsen
enarar

624
2016/06/input.txt Normal file
View File

@@ -0,0 +1,624 @@
wrqhvxvz
fyzrlmet
mnoqzwlx
nckjlmjq
ppgpwuhw
gwmlkpsf
mraribhd
eexeibet
phnkfnoj
huvgfryn
cctfbymg
vuzqijfv
csxkasak
thdtpgsv
qtvawqyd
sbrzqyjv
tsgeceoo
iersjjvv
kkaftivi
cohpqdsa
jqntmweh
ggwfrfij
etgdxkpm
chpiqqnk
mmubsxma
bjbuxerx
ppikxcba
argnznvv
upxrvrws
cnutkqpc
sjxwbjgd
qydjtzwt
fosmuary
kbegfawt
qrhczgxr
xveyfklu
fpijdoxk
efwixzzt
pohwstgq
vlacdfij
idyukbzr
fomngohx
byfhtiqm
nygeoydz
zzindnsu
cqpxyvpx
urbwswjx
bcrsfufk
ogprzbbb
ecqadcfs
djtpcvzf
omxatkmv
qwjmrgiy
vmlqsjki
eacklrro
afvmajbo
yyfzlgqj
mnddmztj
hgcuzdvz
dcdlgcqa
ruellrxp
stgcbypg
cyincneb
gfivdkac
imszlrkh
aurxrsak
upmpveme
ooufhdxg
gbovipin
oekqjihp
ffpzbgim
wmyllpok
jlxdcsfw
rdfbeprc
viuyhnso
qswyjhtr
zqxprsxb
mugvrogu
swgbpgyl
sjxykzhq
bknjvylv
sjroofyl
aclottku
lwzomawr
hmnxauei
eryjulgk
auqbkmsq
wjpyinlb
tycjmlzf
juhepezh
vnhmglwy
wflziftq
yikhdblb
nhzxxdzq
dxrthhic
uvzqbnol
mcctvnwr
npwyyxnd
bbnyzojh
xgfuoirw
jfgjszne
rjopxfcm
efgfmumj
nntsuprr
wxepxebk
ekqnppky
ceuhjapp
xoiukhdz
yyqatdub
bhbsuewa
fgbquatv
yaboswth
snbukjjk
pynjdknt
vvxsotzy
yewjntol
zziajcor
idzqcqdn
snomhhsq
taleymgw
oaofkdgh
uykbobee
qgphfpys
epmdwvie
rswvihev
qtsqhqsa
onypxjqu
lbehiurm
yrqhldki
wntmkpxg
hvhoqjfm
imfrfzzc
hlkrbedu
eltodvxl
fmjbjlzo
uudrfilp
nuordysj
wxmaadsr
zucvyxer
yzgztram
dvpenypi
iugxqkyy
tjwuhzom
rqvviujh
mvwtwcqf
rzzlgbor
ldvgepup
gxkwrgls
pxzmtxes
ydnyqvjd
ctmbtmpn
vzvbnvoh
ogjvwzmi
hkutstvd
wtkbgjxc
zwvdtndc
xoewgwrf
vuywuoyy
tmvgsowx
drpazgpc
hdpktjre
xhujdiuf
usidqmiu
paisyipg
udgpwuyr
xyqujvyl
yzymvngz
bjsfhkho
kleeufzg
boxtwvqp
eirtmgdq
uyatzfjp
eiwaglki
zmfdosar
kqjhffzw
xphspwfi
lkspqenw
snostusw
pwomwuxx
tuwdkyof
jafayips
fwzjafvu
hbsdgbcd
hqabjeak
azauvrcz
yhsyyfht
ncfluumb
xkyddact
absnaesw
nwwgysfc
ovkoeoak
jfkivysc
vnbxmqmg
yxyfjqec
fbpxjxoq
pwfwufud
sxschjcz
iemyfvyk
jpsozquz
xxkbhqfx
ctzdlqim
ecvuennt
ntsymmce
cfammoxo
qdeuphqg
shhihavx
raxrfsjs
rffcmsfe
keoiclfo
tonhzkka
qvifltqb
dxgzlvvt
wjolvrqy
rxrojpfe
zjfegcjb
ionhbxlk
uttnrfbn
elkligyr
zxtgftyp
zgrlkmbm
udynqgcr
pwxnwfxi
wslxkqmt
lzdhoala
cccvdbva
sgdusmtl
kluxyiti
wfekkxph
obdeuglc
vsizhxgd
txldyjzb
ytwdfalx
wgdwnlmh
nbfwcuec
cphqneqh
ykmiwxci
diqmosuf
ycxbayxd
uozhqaha
foaebowb
whsvmuqm
uqycszbo
caatmkxj
pmrllxgj
rpjtthix
nkabrxoe
dyjavdch
bvfwapob
gxdagoag
ygsigzqg
tojebkhg
maywseuz
fzycswkp
gxuhflnn
xdrlwkzt
qzdueidt
xrhcqpcx
anmlyixt
igkeehdq
rbbfewws
ybzityqu
xrsnibvq
kiitlldy
dnnxpbgg
vghhgbay
lttzpsfu
mzurjkii
tyjyhtbg
ymvdocyu
errkxbjz
kdhdhckp
siqzydiw
gaxwpwtf
jgsgmbxa
meyjbgaj
nxdgwanj
irypqcfl
kwzsqbtn
vqbwffro
gbhjoydl
mtjeaybv
vkejxfui
xkrlzagc
rvckysna
qttzpaob
faejrisy
oenhtrjt
zpajldwd
hdlfphtw
uuuztawz
priivfke
ltqlgmcy
wekrahkz
arvgglws
gmfrdeec
bslrhbcq
dwredpeh
ripdkqay
bkajataw
rfwccavd
vrcnadbn
mxjayvar
xppvhrfq
rnbkpicv
xlcoaixn
ypfgypwn
aucydvqh
gfmivoiw
tdrrgvae
nvatvqbd
uqnkdtci
yvvkoljz
nrvayuna
kyjspqke
idfgxyxa
whhnbvzj
untvohwp
nbowzeok
fojmdmwt
hicfolns
nvjmitnz
dixbuczb
oozreove
aogeaoij
swqdsqur
kuircnkc
jommqnij
jeoccbrl
srncrgac
bflzsoxz
crqrvnux
aehtnnrc
pjfpvctd
ooudwhnj
oajsxzfy
zgocdfqi
skezvrmd
hphnrmdo
mntkzcex
dcezrbsc
cwvnaeky
zazjhuho
hjsicgvu
bblytdbn
kuioocro
wdmsbnph
pglvxlat
lfivjfyl
tfhuxole
axtnimum
avbexhov
wuwtxwli
ovqriwps
kpzzawgo
zzrnrxfc
erbhfcuz
srikwbhj
ihkseool
ihnzciwn
drvqkldw
qjjmhdiq
zthvplsb
cvzajngd
aztvfmpc
osvxkdfu
hujqnbej
qlailyvd
aldnonen
mlwgljdh
ljegteof
hmydlwte
dxcbelhq
ikxejooi
rxfqniee
qzfxpqrw
qcletmfv
rlnllmwt
ldgcvuaq
oijbcwzp
nsfanzbx
zqtxrhlw
vruxpbdr
zovauywl
vfqsnrkg
jseiugwx
gplkhkbv
vgxaikyq
fxuwawnt
txpwlven
lhdukmwm
vqohfdux
pwwkcyuy
siyuwkdf
ijeceqqv
rcafsasu
dwmzwajz
hpwanjtr
aqcumwlo
nblfdzch
xjmgbuai
dbcmcucf
ulqoaslo
dilljkcb
qzbuzkuj
kqaovbws
ggaoqcge
dkafdhok
kiwmtsle
pmosnoov
bqzwbyff
jzbkupuq
loruoeuj
znxhxcbq
zuiojajs
nkzxcjnb
byfmovta
lexozwii
mmiirvzo
wxdmazhu
tvakysqv
fcclondf
laovojik
liwlmxma
fhfyuwhu
dhnbftia
hhjgkstn
xievywrd
ytggugmi
fueqzuxp
cntcbskl
moevqzch
rkvngfzu
vyoyrmnz
fsmfxqux
kjrcqres
wbwgstkj
bbpkbyfv
odlwmtdm
yvwxzpkp
tglceron
pfqhznpf
cjvguvna
awatckgf
jjuedfcr
xsmzexyx
zolugtkn
equadjbw
yzuwbeip
juokhxyh
blbzigrg
xiiqmrfr
wpklubhl
dnklxihu
dvypukjj
gezdwsyq
ijpsmlhy
haybyxgt
ttrpwsia
xsmuumcy
zjcjcfgn
qcyfmzxn
jbpiesjd
imsgjvbe
bluqigdj
pkjtbwrz
ghdqwhof
qqcyrcmt
nwqbpohw
wtdmhjpz
kysorzis
beybysab
wzotkcsl
rkxcjtxw
kxdovhby
nwbmwfvw
ldgnxdzg
fvkssaql
gwnpsneo
kzdageby
tvalcxyg
vudemgvl
nhsqjdry
ihbwfzmq
ulzxzqpr
ulyisqeh
gibzsqab
qlbvivbk
zfjbeimz
uwwkbmad
jysiepul
pcttcpfb
ikigjtum
ebnjregv
wlnojjdl
jseorxzw
jadngcyb
chblsorv
atsykhzy
llmwiiue
lncwmxbm
uaprvgtu
fsfbhhna
qekriahp
cprovrro
arkzaotx
cqkmiisd
byasehtp
mquxvaus
yqdboakk
fcbmnmas
ndgancyd
mqbhpwky
bqqnrysa
heevqgpx
wenamdlt
geqpvmvy
awohkyss
csauzidz
rzbxnqxo
lijyetnn
szhywdzw
bvspeaot
cassrzgo
ebniprcj
jkgqnrmt
kanfkldg
tatiqhyp
kjrnsxxf
tigsmyql
dpiwuvgd
mysstyqk
ggmceolm
uykudpjq
lqcfbupx
bspqglas
adlikxti
ytkklkgs
hagxejlb
qawjetxs
mfozming
mijryfrm
aiqisdzo
oizwdmba
fmwhxvyn
nbpvnnqu
uucpiqnr
derohmtm
mtvvlkwb
odofsftu
otdpquza
ieuqarfj
efbllxnl
piyhprln
zzhuyevt
xggfukpg
oagdqlte
jcaknznq
bmqvzzpm
gqccntfm
kejcxspk
eghjfubo
jpesccrp
lptxbsjp
lkqdahjg
gllipbpw
gmtpkpbh
vskklchk
hkujjpqf
onqsydhq
abymijve
setxngek
pylgwuhu
rvmcnudu
zkoigkmp
jhufctqm
rjlebecw
kfrcyvsg
gdvswlmx
ddneodvc
eleaatkz
xdrrnsmo
eavdleuh
snuapqlh
qfprvzlf
jwtxoteb
xhmeonrl
oomepucp
voldiamz
pgctnnvi
zxctfwmu
ssvzhjjc
iszyacdg
kwhtrkug
tsfcxlah
jhnpuzwv
vgvytgdv
xppvelhv
lczyglmi
mzyncyji
fktibrns
tnpbpekf
htcfrtea
iehqohtx
ofhqjvsk
etoxthqk
lcpnurbf
pquperie
icdggxtv
gebpbjje
hrtqhskf
plxtfopc
smtpxpvf
tcihqpmd
tmprzzjw
hnjkwcvm
qzmofpgs
ssmfzilr
glxqqwis
umeygdrp
qhqgfocl
rmxlqigp
vcxozjsn
mviznnhr
islgcrgm

45
2016/06/src/main.rs Normal file
View File

@@ -0,0 +1,45 @@
use std::io::{self, BufRead};
use std::collections::HashMap;
fn main() {
let stdin = io::stdin();
let lines = stdin.lock().lines()
.filter_map(|x| x.ok())
.collect::<Vec<_>>();
let mut count: Vec<HashMap<char, u16>> = vec![HashMap::new(); 1024];
for line in lines {
for (i, ch) in line.chars().enumerate() {
*count[i].entry(ch).or_insert(0) += 1;
}
}
let corrected_most: String = count.iter()
.filter_map(|x| {
let mut vec: Vec<_> = x.iter().collect();
vec.sort_by_key(|k| k.1);
vec.pop()
})
.map(|x| *x.0)
.collect();
let corrected_least: String = count.iter()
.filter_map(|x| {
let mut vec: Vec<_> = x.iter().collect();
vec.sort_by_key(|k| k.1);
vec.reverse();
vec.pop()
})
.map(|x| *x.0)
.collect();
println!("corrected_most={}", corrected_most);
println!("corrected_least={}", corrected_least);
}