mirror of
https://github.com/chylex/Advent-of-Code.git
synced 2024-11-25 23:42:47 +01:00
Compare commits
3 Commits
20f7f156e0
...
c83c50eeaf
Author | SHA1 | Date | |
---|---|---|---|
c83c50eeaf | |||
c90b93c155 | |||
2456d3d7a0 |
24
2022/.idea/runConfigurations/Day_07.xml
Normal file
24
2022/.idea/runConfigurations/Day_07.xml
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
<component name="ProjectRunConfigurationManager">
|
||||||
|
<configuration default="false" name="Day 07" type="PythonConfigurationType" factoryName="Python">
|
||||||
|
<module name="2022" />
|
||||||
|
<option name="INTERPRETER_OPTIONS" value="" />
|
||||||
|
<option name="PARENT_ENVS" value="true" />
|
||||||
|
<envs>
|
||||||
|
<env name="PYTHONUNBUFFERED" value="1" />
|
||||||
|
</envs>
|
||||||
|
<option name="SDK_HOME" value="" />
|
||||||
|
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$/07" />
|
||||||
|
<option name="IS_MODULE_SDK" value="true" />
|
||||||
|
<option name="ADD_CONTENT_ROOTS" value="true" />
|
||||||
|
<option name="ADD_SOURCE_ROOTS" value="true" />
|
||||||
|
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
|
||||||
|
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/07/main.py" />
|
||||||
|
<option name="PARAMETERS" value="" />
|
||||||
|
<option name="SHOW_COMMAND_LINE" value="false" />
|
||||||
|
<option name="EMULATE_TERMINAL" value="false" />
|
||||||
|
<option name="MODULE_MODE" value="false" />
|
||||||
|
<option name="REDIRECT_INPUT" value="false" />
|
||||||
|
<option name="INPUT_FILE" value="" />
|
||||||
|
<method v="2" />
|
||||||
|
</configuration>
|
||||||
|
</component>
|
24
2022/.idea/runConfigurations/Day_08.xml
Normal file
24
2022/.idea/runConfigurations/Day_08.xml
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
<component name="ProjectRunConfigurationManager">
|
||||||
|
<configuration default="false" name="Day 08" type="PythonConfigurationType" factoryName="Python">
|
||||||
|
<module name="2022" />
|
||||||
|
<option name="INTERPRETER_OPTIONS" value="" />
|
||||||
|
<option name="PARENT_ENVS" value="true" />
|
||||||
|
<envs>
|
||||||
|
<env name="PYTHONUNBUFFERED" value="1" />
|
||||||
|
</envs>
|
||||||
|
<option name="SDK_HOME" value="" />
|
||||||
|
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$/08" />
|
||||||
|
<option name="IS_MODULE_SDK" value="true" />
|
||||||
|
<option name="ADD_CONTENT_ROOTS" value="true" />
|
||||||
|
<option name="ADD_SOURCE_ROOTS" value="true" />
|
||||||
|
<EXTENSION ID="PythonCoverageRunConfigurationExtension" runner="coverage.py" />
|
||||||
|
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/08/main.py" />
|
||||||
|
<option name="PARAMETERS" value="" />
|
||||||
|
<option name="SHOW_COMMAND_LINE" value="false" />
|
||||||
|
<option name="EMULATE_TERMINAL" value="false" />
|
||||||
|
<option name="MODULE_MODE" value="false" />
|
||||||
|
<option name="REDIRECT_INPUT" value="false" />
|
||||||
|
<option name="INPUT_FILE" value="" />
|
||||||
|
<method v="2" />
|
||||||
|
</configuration>
|
||||||
|
</component>
|
991
2022/07/input.txt
Normal file
991
2022/07/input.txt
Normal file
@ -0,0 +1,991 @@
|
|||||||
|
$ cd /
|
||||||
|
$ ls
|
||||||
|
dir blrnnv
|
||||||
|
dir ctfjwl
|
||||||
|
dir dqf
|
||||||
|
135993 dqqbcfr
|
||||||
|
dir ftj
|
||||||
|
125510 fzjdz
|
||||||
|
dir jvtlfbzr
|
||||||
|
31762 lsvw.lwr
|
||||||
|
dir qfstpm
|
||||||
|
dir sbprmc
|
||||||
|
dir svbnljr
|
||||||
|
dir tchbjclg
|
||||||
|
dir wtm
|
||||||
|
dir ztrz
|
||||||
|
$ cd blrnnv
|
||||||
|
$ ls
|
||||||
|
169869 mjjj.wnq
|
||||||
|
$ cd ..
|
||||||
|
$ cd ctfjwl
|
||||||
|
$ ls
|
||||||
|
209537 zzdpcnmt.qbf
|
||||||
|
$ cd ..
|
||||||
|
$ cd dqf
|
||||||
|
$ ls
|
||||||
|
205200 hnbqlmmg
|
||||||
|
80316 lmw.zmd
|
||||||
|
dir mwj
|
||||||
|
122312 tsrwvqbg.tzh
|
||||||
|
$ cd mwj
|
||||||
|
$ ls
|
||||||
|
18195 bddslhrg.twf
|
||||||
|
122813 qfccg.crl
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ftj
|
||||||
|
$ ls
|
||||||
|
dir clchr
|
||||||
|
dir hmd
|
||||||
|
40232 vtzlv
|
||||||
|
$ cd clchr
|
||||||
|
$ ls
|
||||||
|
dir sbzf
|
||||||
|
$ cd sbzf
|
||||||
|
$ ls
|
||||||
|
257770 thwhz.pgp
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd hmd
|
||||||
|
$ ls
|
||||||
|
62643 bddslhrg.qzl
|
||||||
|
dir lfpm
|
||||||
|
277745 sgddpc
|
||||||
|
117478 vjchlsrc.cmh
|
||||||
|
7911 zzdpcnmt.qbf
|
||||||
|
$ cd lfpm
|
||||||
|
$ ls
|
||||||
|
107158 bddslhrg
|
||||||
|
253844 fzjdz.mlw
|
||||||
|
217005 glzsnz.cvs
|
||||||
|
71371 qfccg.crl
|
||||||
|
193163 sdmmmds.nwt
|
||||||
|
dir vlnbm
|
||||||
|
$ cd vlnbm
|
||||||
|
$ ls
|
||||||
|
143113 lwhtsvg.bjm
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd jvtlfbzr
|
||||||
|
$ ls
|
||||||
|
dir gwz
|
||||||
|
dir hfftvmw
|
||||||
|
dir jlftgw
|
||||||
|
dir nnpvwtvt
|
||||||
|
98713 wtbzpqvb
|
||||||
|
$ cd gwz
|
||||||
|
$ ls
|
||||||
|
161853 blfnwqtm.vhw
|
||||||
|
180524 fbqpql.bbw
|
||||||
|
dir jvrdcf
|
||||||
|
dir ldcmtwvt
|
||||||
|
dir pjm
|
||||||
|
dir qjj
|
||||||
|
$ cd jvrdcf
|
||||||
|
$ ls
|
||||||
|
42681 bddslhrg
|
||||||
|
dir cbcq
|
||||||
|
dir fzjdz
|
||||||
|
dir ghwnd
|
||||||
|
dir gpbhtj
|
||||||
|
dir hsmlb
|
||||||
|
dir mjjj
|
||||||
|
129934 sdmmmds.nwt
|
||||||
|
dir wdvqhn
|
||||||
|
196970 zzdpcnmt.qbf
|
||||||
|
$ cd cbcq
|
||||||
|
$ ls
|
||||||
|
dir hsw
|
||||||
|
262458 lbhzblh.zfn
|
||||||
|
dir qbpvrr
|
||||||
|
205708 sdmmmds.nwt
|
||||||
|
263842 tqcgmwbj.bcn
|
||||||
|
4847 vjchlsrc.cmh
|
||||||
|
72550 wnmpdtrr.zrc
|
||||||
|
$ cd hsw
|
||||||
|
$ ls
|
||||||
|
dir rdvfwbw
|
||||||
|
$ cd rdvfwbw
|
||||||
|
$ ls
|
||||||
|
dir fthdrqnr
|
||||||
|
$ cd fthdrqnr
|
||||||
|
$ ls
|
||||||
|
31974 htnpjdr.wsl
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd qbpvrr
|
||||||
|
$ ls
|
||||||
|
198987 nnhpdvv.vvn
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd fzjdz
|
||||||
|
$ ls
|
||||||
|
149832 ldb.qnt
|
||||||
|
183866 nbnzfplj.lrs
|
||||||
|
$ cd ..
|
||||||
|
$ cd ghwnd
|
||||||
|
$ ls
|
||||||
|
177598 ggchv.tsv
|
||||||
|
163367 mjjj
|
||||||
|
13258 pdcf.flm
|
||||||
|
$ cd ..
|
||||||
|
$ cd gpbhtj
|
||||||
|
$ ls
|
||||||
|
dir cvm
|
||||||
|
160598 fcng.sbf
|
||||||
|
272547 ndnlzb
|
||||||
|
285657 pvs.ldf
|
||||||
|
166261 sdmmmds.nwt
|
||||||
|
207433 zzdpcnmt.qbf
|
||||||
|
$ cd cvm
|
||||||
|
$ ls
|
||||||
|
246462 fpwvfs.gpb
|
||||||
|
133303 vjchlsrc.cmh
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd hsmlb
|
||||||
|
$ ls
|
||||||
|
252425 tqcgmwbj.bcn
|
||||||
|
$ cd ..
|
||||||
|
$ cd mjjj
|
||||||
|
$ ls
|
||||||
|
96351 fvgj
|
||||||
|
272667 qfccg.crl
|
||||||
|
196309 ssv.ljs
|
||||||
|
$ cd ..
|
||||||
|
$ cd wdvqhn
|
||||||
|
$ ls
|
||||||
|
190200 sdmmmds.nwt
|
||||||
|
dir tjgfcs
|
||||||
|
214364 tqcgmwbj.bcn
|
||||||
|
174218 wqpmmgtd
|
||||||
|
$ cd tjgfcs
|
||||||
|
$ ls
|
||||||
|
dir gngb
|
||||||
|
268455 hqctmf.cdg
|
||||||
|
242060 prbwvv
|
||||||
|
$ cd gngb
|
||||||
|
$ ls
|
||||||
|
102313 fhqgpb.cqc
|
||||||
|
77189 mjjj.cdw
|
||||||
|
163701 sdmmmds.nwt
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ldcmtwvt
|
||||||
|
$ ls
|
||||||
|
dir bqmbrr
|
||||||
|
dir cfcfnspz
|
||||||
|
dir fzjdz
|
||||||
|
dir gvd
|
||||||
|
dir mpqtgd
|
||||||
|
9560 mqfdcz.wqt
|
||||||
|
75810 shps
|
||||||
|
249000 tqcgmwbj.bcn
|
||||||
|
139099 zdv.zgz
|
||||||
|
dir zpct
|
||||||
|
$ cd bqmbrr
|
||||||
|
$ ls
|
||||||
|
175893 hwrdtwsv.brd
|
||||||
|
$ cd ..
|
||||||
|
$ cd cfcfnspz
|
||||||
|
$ ls
|
||||||
|
dir gmzsn
|
||||||
|
dir gvrfbt
|
||||||
|
105314 mjjj
|
||||||
|
181873 vjchlsrc.cmh
|
||||||
|
$ cd gmzsn
|
||||||
|
$ ls
|
||||||
|
dir bddslhrg
|
||||||
|
$ cd bddslhrg
|
||||||
|
$ ls
|
||||||
|
dir cspptmpm
|
||||||
|
258841 fzjdz.bfs
|
||||||
|
dir npmh
|
||||||
|
72584 qfccg.crl
|
||||||
|
$ cd cspptmpm
|
||||||
|
$ ls
|
||||||
|
239223 fzjdz
|
||||||
|
11003 sdmmmds.nwt
|
||||||
|
73589 tqcgmwbj.bcn
|
||||||
|
251204 vdz.jcd
|
||||||
|
$ cd ..
|
||||||
|
$ cd npmh
|
||||||
|
$ ls
|
||||||
|
186878 bddslhrg
|
||||||
|
264830 bddslhrg.gdq
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd gvrfbt
|
||||||
|
$ ls
|
||||||
|
200067 zcvjj
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd fzjdz
|
||||||
|
$ ls
|
||||||
|
dir bddslhrg
|
||||||
|
dir fvqszrj
|
||||||
|
dir gqcdtjzj
|
||||||
|
dir pcfr
|
||||||
|
250120 pqqbpmr
|
||||||
|
dir qbpvrr
|
||||||
|
$ cd bddslhrg
|
||||||
|
$ ls
|
||||||
|
72852 sjn
|
||||||
|
$ cd ..
|
||||||
|
$ cd fvqszrj
|
||||||
|
$ ls
|
||||||
|
dir mmzcqr
|
||||||
|
24439 tqcgmwbj.bcn
|
||||||
|
dir vhpqjr
|
||||||
|
$ cd mmzcqr
|
||||||
|
$ ls
|
||||||
|
dir gzfqggrr
|
||||||
|
$ cd gzfqggrr
|
||||||
|
$ ls
|
||||||
|
162528 frdgcr.gnb
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd vhpqjr
|
||||||
|
$ ls
|
||||||
|
194144 mjjj
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd gqcdtjzj
|
||||||
|
$ ls
|
||||||
|
231917 pftb
|
||||||
|
174091 vbzfgtwp
|
||||||
|
$ cd ..
|
||||||
|
$ cd pcfr
|
||||||
|
$ ls
|
||||||
|
dir dtbws
|
||||||
|
76624 qfccg.crl
|
||||||
|
dir qjqjd
|
||||||
|
dir qjsldd
|
||||||
|
$ cd dtbws
|
||||||
|
$ ls
|
||||||
|
dir vwjnsbjm
|
||||||
|
$ cd vwjnsbjm
|
||||||
|
$ ls
|
||||||
|
56502 mjjj.jqj
|
||||||
|
130426 qfglmz
|
||||||
|
23199 vjchlsrc.cmh
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd qjqjd
|
||||||
|
$ ls
|
||||||
|
71015 qfccg.crl
|
||||||
|
40443 vjchlsrc.cmh
|
||||||
|
$ cd ..
|
||||||
|
$ cd qjsldd
|
||||||
|
$ ls
|
||||||
|
261945 fzjdz.vcw
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd qbpvrr
|
||||||
|
$ ls
|
||||||
|
138915 fvh.sdp
|
||||||
|
dir mdvqv
|
||||||
|
168843 qbpvrr
|
||||||
|
90599 tchbjclg
|
||||||
|
226671 vjchlsrc.cmh
|
||||||
|
$ cd mdvqv
|
||||||
|
$ ls
|
||||||
|
159050 bddslhrg
|
||||||
|
2691 fzjdz
|
||||||
|
245322 psr
|
||||||
|
7732 zhnbgcc.lsc
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd gvd
|
||||||
|
$ ls
|
||||||
|
84112 bhnt.gjg
|
||||||
|
18231 gzrgd.vvj
|
||||||
|
dir ntvmrrd
|
||||||
|
234773 rcfbjzj
|
||||||
|
281805 sdmmmds.nwt
|
||||||
|
267837 zzdpcnmt.qbf
|
||||||
|
$ cd ntvmrrd
|
||||||
|
$ ls
|
||||||
|
46209 lwvvwd.rtg
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd mpqtgd
|
||||||
|
$ ls
|
||||||
|
99833 qbpvrr
|
||||||
|
$ cd ..
|
||||||
|
$ cd zpct
|
||||||
|
$ ls
|
||||||
|
dir bddslhrg
|
||||||
|
272296 znffshsg.jrt
|
||||||
|
$ cd bddslhrg
|
||||||
|
$ ls
|
||||||
|
81585 vjchlsrc.cmh
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd pjm
|
||||||
|
$ ls
|
||||||
|
147674 rbctzb
|
||||||
|
$ cd ..
|
||||||
|
$ cd qjj
|
||||||
|
$ ls
|
||||||
|
21770 wtht.fpd
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd hfftvmw
|
||||||
|
$ ls
|
||||||
|
dir bhvzrsv
|
||||||
|
130208 cclgndpd
|
||||||
|
dir fzjdz
|
||||||
|
39285 jtmcp.pjv
|
||||||
|
dir mbgvdmpp
|
||||||
|
dir tchbjclg
|
||||||
|
202920 vjchlsrc.cmh
|
||||||
|
$ cd bhvzrsv
|
||||||
|
$ ls
|
||||||
|
167049 bts
|
||||||
|
dir mjjj
|
||||||
|
257434 qsrpmshg
|
||||||
|
279724 sdmmmds.nwt
|
||||||
|
149934 snpb.zwq
|
||||||
|
254808 tqcgmwbj.bcn
|
||||||
|
dir wgf
|
||||||
|
$ cd mjjj
|
||||||
|
$ ls
|
||||||
|
dir mrlvp
|
||||||
|
$ cd mrlvp
|
||||||
|
$ ls
|
||||||
|
197237 pmwjbf.lmn
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd wgf
|
||||||
|
$ ls
|
||||||
|
77157 zzdpcnmt.qbf
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd fzjdz
|
||||||
|
$ ls
|
||||||
|
77499 mjjj.pdq
|
||||||
|
dir shrpdcg
|
||||||
|
180282 zzdpcnmt.qbf
|
||||||
|
$ cd shrpdcg
|
||||||
|
$ ls
|
||||||
|
22528 bddslhrg
|
||||||
|
191369 mjjj.llb
|
||||||
|
35213 sdmmmds.nwt
|
||||||
|
131772 spfmhdpf.wtr
|
||||||
|
284434 tpzg.qjg
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd mbgvdmpp
|
||||||
|
$ ls
|
||||||
|
220250 fsdzqhc.ljm
|
||||||
|
101355 vnrcwb
|
||||||
|
$ cd ..
|
||||||
|
$ cd tchbjclg
|
||||||
|
$ ls
|
||||||
|
113952 gjbp.qgs
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd jlftgw
|
||||||
|
$ ls
|
||||||
|
dir bddslhrg
|
||||||
|
210047 cdbch
|
||||||
|
dir dvrb
|
||||||
|
266336 fhvwlg
|
||||||
|
139851 qfccg.crl
|
||||||
|
dir rcqhb
|
||||||
|
176510 vjchlsrc.cmh
|
||||||
|
dir wfrjg
|
||||||
|
$ cd bddslhrg
|
||||||
|
$ ls
|
||||||
|
78175 zzdpcnmt.qbf
|
||||||
|
$ cd ..
|
||||||
|
$ cd dvrb
|
||||||
|
$ ls
|
||||||
|
216103 fzjdz.blg
|
||||||
|
$ cd ..
|
||||||
|
$ cd rcqhb
|
||||||
|
$ ls
|
||||||
|
39727 cgfjm.dpt
|
||||||
|
dir pwb
|
||||||
|
$ cd pwb
|
||||||
|
$ ls
|
||||||
|
39040 sdmmmds.nwt
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd wfrjg
|
||||||
|
$ ls
|
||||||
|
206877 zzdpcnmt.qbf
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd nnpvwtvt
|
||||||
|
$ ls
|
||||||
|
264455 czrjz
|
||||||
|
dir nfdv
|
||||||
|
dir nmcp
|
||||||
|
113232 pffgw.hbv
|
||||||
|
dir qrzlrt
|
||||||
|
$ cd nfdv
|
||||||
|
$ ls
|
||||||
|
dir fpldng
|
||||||
|
dir jhj
|
||||||
|
56720 ltv
|
||||||
|
170870 rgvs.ggh
|
||||||
|
$ cd fpldng
|
||||||
|
$ ls
|
||||||
|
157283 vzv.qrq
|
||||||
|
$ cd ..
|
||||||
|
$ cd jhj
|
||||||
|
$ ls
|
||||||
|
172487 qpfh.lpr
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd nmcp
|
||||||
|
$ ls
|
||||||
|
273633 zzdpcnmt.qbf
|
||||||
|
$ cd ..
|
||||||
|
$ cd qrzlrt
|
||||||
|
$ ls
|
||||||
|
111080 bddslhrg
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd qfstpm
|
||||||
|
$ ls
|
||||||
|
92950 hjr.zjn
|
||||||
|
252254 sdmmmds.nwt
|
||||||
|
$ cd ..
|
||||||
|
$ cd sbprmc
|
||||||
|
$ ls
|
||||||
|
dir bddslhrg
|
||||||
|
158704 bgnt.vbd
|
||||||
|
dir cddp
|
||||||
|
dir cpf
|
||||||
|
dir hfns
|
||||||
|
276655 phcccdq
|
||||||
|
dir qbpvrr
|
||||||
|
dir srjpcj
|
||||||
|
55405 vhb.mbj
|
||||||
|
$ cd bddslhrg
|
||||||
|
$ ls
|
||||||
|
238260 mjjj
|
||||||
|
$ cd ..
|
||||||
|
$ cd cddp
|
||||||
|
$ ls
|
||||||
|
87685 fzjdz.sbz
|
||||||
|
$ cd ..
|
||||||
|
$ cd cpf
|
||||||
|
$ ls
|
||||||
|
dir tchbjclg
|
||||||
|
$ cd tchbjclg
|
||||||
|
$ ls
|
||||||
|
dir wjcvfvz
|
||||||
|
$ cd wjcvfvz
|
||||||
|
$ ls
|
||||||
|
280711 svmf.czw
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd hfns
|
||||||
|
$ ls
|
||||||
|
dir bbjnrhf
|
||||||
|
dir cvjtpc
|
||||||
|
101075 ddbml.vff
|
||||||
|
dir gdlqtlv
|
||||||
|
157960 mswfp.wcj
|
||||||
|
187182 qddfchn.dpg
|
||||||
|
59533 rfjvzcq
|
||||||
|
47332 wszmlq.nbt
|
||||||
|
$ cd bbjnrhf
|
||||||
|
$ ls
|
||||||
|
269590 dgmjpzcz
|
||||||
|
dir mjjj
|
||||||
|
84955 mjjj.jqn
|
||||||
|
dir mwqvvsnt
|
||||||
|
dir qbpvrr
|
||||||
|
dir qtdmwqcj
|
||||||
|
131930 tqcgmwbj.bcn
|
||||||
|
dir vvwb
|
||||||
|
$ cd mjjj
|
||||||
|
$ ls
|
||||||
|
dir hvvh
|
||||||
|
$ cd hvvh
|
||||||
|
$ ls
|
||||||
|
235980 vmmvp.sbh
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd mwqvvsnt
|
||||||
|
$ ls
|
||||||
|
242698 mjjj.qbm
|
||||||
|
15137 rncwrgjl.jfr
|
||||||
|
158528 sdmmmds.nwt
|
||||||
|
$ cd ..
|
||||||
|
$ cd qbpvrr
|
||||||
|
$ ls
|
||||||
|
dir gpc
|
||||||
|
$ cd gpc
|
||||||
|
$ ls
|
||||||
|
184310 lqfgplfg
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd qtdmwqcj
|
||||||
|
$ ls
|
||||||
|
30238 cfpng.fnl
|
||||||
|
284340 gst
|
||||||
|
dir lvcjcglg
|
||||||
|
82263 twmnlqcq
|
||||||
|
78023 zzdpcnmt.qbf
|
||||||
|
$ cd lvcjcglg
|
||||||
|
$ ls
|
||||||
|
225027 lsdrg.wqv
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd vvwb
|
||||||
|
$ ls
|
||||||
|
184590 trg.vmc
|
||||||
|
156231 zzdpcnmt.qbf
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd cvjtpc
|
||||||
|
$ ls
|
||||||
|
dir whqnlc
|
||||||
|
$ cd whqnlc
|
||||||
|
$ ls
|
||||||
|
66362 jnsprdt.vrs
|
||||||
|
dir tchbjclg
|
||||||
|
dir zhw
|
||||||
|
$ cd tchbjclg
|
||||||
|
$ ls
|
||||||
|
227846 vqjtc.pld
|
||||||
|
$ cd ..
|
||||||
|
$ cd zhw
|
||||||
|
$ ls
|
||||||
|
dir bgwcrp
|
||||||
|
$ cd bgwcrp
|
||||||
|
$ ls
|
||||||
|
114175 dftv
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd gdlqtlv
|
||||||
|
$ ls
|
||||||
|
121215 gbltpcv.prz
|
||||||
|
41387 tqcgmwbj.bcn
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd qbpvrr
|
||||||
|
$ ls
|
||||||
|
79921 tqcgmwbj.bcn
|
||||||
|
263185 vjchlsrc.cmh
|
||||||
|
$ cd ..
|
||||||
|
$ cd srjpcj
|
||||||
|
$ ls
|
||||||
|
106650 fzjdz.tdf
|
||||||
|
135245 qfccg.crl
|
||||||
|
97014 tvlmvqm
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd svbnljr
|
||||||
|
$ ls
|
||||||
|
286919 lwvw.zlr
|
||||||
|
$ cd ..
|
||||||
|
$ cd tchbjclg
|
||||||
|
$ ls
|
||||||
|
dir bljmjwm
|
||||||
|
dir hsjww
|
||||||
|
dir ptfsh
|
||||||
|
dir qbpvrr
|
||||||
|
147832 qfccg.crl
|
||||||
|
$ cd bljmjwm
|
||||||
|
$ ls
|
||||||
|
dir cqtmhzbf
|
||||||
|
dir mfpcdbg
|
||||||
|
dir qlzg
|
||||||
|
dir qtdh
|
||||||
|
dir tbdff
|
||||||
|
dir tchbjclg
|
||||||
|
211603 zhr.gwl
|
||||||
|
$ cd cqtmhzbf
|
||||||
|
$ ls
|
||||||
|
dir mmbgqlm
|
||||||
|
150758 tqcgmwbj.bcn
|
||||||
|
dir ztcbmbw
|
||||||
|
$ cd mmbgqlm
|
||||||
|
$ ls
|
||||||
|
93439 bddslhrg.gnm
|
||||||
|
25644 qbpvrr.jhm
|
||||||
|
$ cd ..
|
||||||
|
$ cd ztcbmbw
|
||||||
|
$ ls
|
||||||
|
dir cmwwg
|
||||||
|
dir stgmndfd
|
||||||
|
$ cd cmwwg
|
||||||
|
$ ls
|
||||||
|
239158 bfl.pwl
|
||||||
|
dir dbvnwz
|
||||||
|
17700 pqtpmpp
|
||||||
|
dir tchbjclg
|
||||||
|
$ cd dbvnwz
|
||||||
|
$ ls
|
||||||
|
217821 bzgsbc.zzp
|
||||||
|
$ cd ..
|
||||||
|
$ cd tchbjclg
|
||||||
|
$ ls
|
||||||
|
dir tpdtglwp
|
||||||
|
52714 vjchlsrc.cmh
|
||||||
|
111040 zzdpcnmt.qbf
|
||||||
|
$ cd tpdtglwp
|
||||||
|
$ ls
|
||||||
|
287567 jmddscd
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd stgmndfd
|
||||||
|
$ ls
|
||||||
|
38426 bll.pww
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd mfpcdbg
|
||||||
|
$ ls
|
||||||
|
dir trjgzcj
|
||||||
|
$ cd trjgzcj
|
||||||
|
$ ls
|
||||||
|
dir hngr
|
||||||
|
268655 lgrwtch
|
||||||
|
258843 pbpnjf.tmg
|
||||||
|
100112 qbh
|
||||||
|
72784 qbpvrr.cpg
|
||||||
|
dir vbmqtf
|
||||||
|
197735 vjchlsrc.cmh
|
||||||
|
$ cd hngr
|
||||||
|
$ ls
|
||||||
|
82873 cwbmqp.llb
|
||||||
|
261780 hsgwfv.pfn
|
||||||
|
42859 ljt
|
||||||
|
dir tchbjclg
|
||||||
|
$ cd tchbjclg
|
||||||
|
$ ls
|
||||||
|
dir fhsgvttf
|
||||||
|
253131 gtghn
|
||||||
|
dir nzpcvjhp
|
||||||
|
dir tpqrqtqj
|
||||||
|
$ cd fhsgvttf
|
||||||
|
$ ls
|
||||||
|
56727 mjjj.vzf
|
||||||
|
$ cd ..
|
||||||
|
$ cd nzpcvjhp
|
||||||
|
$ ls
|
||||||
|
dir bddslhrg
|
||||||
|
dir blhrls
|
||||||
|
$ cd bddslhrg
|
||||||
|
$ ls
|
||||||
|
242433 vpvpqtqb.dfr
|
||||||
|
$ cd ..
|
||||||
|
$ cd blhrls
|
||||||
|
$ ls
|
||||||
|
110313 fzjdz.qtf
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd tpqrqtqj
|
||||||
|
$ ls
|
||||||
|
dir dfjmpvj
|
||||||
|
114636 gmqqrtv
|
||||||
|
dir mjjj
|
||||||
|
175067 wggfznff
|
||||||
|
$ cd dfjmpvj
|
||||||
|
$ ls
|
||||||
|
174485 sjzg
|
||||||
|
$ cd ..
|
||||||
|
$ cd mjjj
|
||||||
|
$ ls
|
||||||
|
111397 pslm.fjf
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd vbmqtf
|
||||||
|
$ ls
|
||||||
|
151429 tchbjclg.tzm
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd qlzg
|
||||||
|
$ ls
|
||||||
|
127640 bddslhrg.wbj
|
||||||
|
dir fzjdz
|
||||||
|
dir ghllcw
|
||||||
|
62733 qfccg.crl
|
||||||
|
96986 qwgh
|
||||||
|
268380 vjchlsrc.cmh
|
||||||
|
$ cd fzjdz
|
||||||
|
$ ls
|
||||||
|
153535 gcjss
|
||||||
|
$ cd ..
|
||||||
|
$ cd ghllcw
|
||||||
|
$ ls
|
||||||
|
dir fzjdz
|
||||||
|
dir hwfm
|
||||||
|
2536 jglh.njg
|
||||||
|
dir mjjj
|
||||||
|
dir mlhwcg
|
||||||
|
200842 qfccg.crl
|
||||||
|
dir tchbjclg
|
||||||
|
246542 tqcgmwbj.bcn
|
||||||
|
dir tqtsl
|
||||||
|
dir vpn
|
||||||
|
$ cd fzjdz
|
||||||
|
$ ls
|
||||||
|
124920 jzsbrwj
|
||||||
|
dir wtvfgcrq
|
||||||
|
$ cd wtvfgcrq
|
||||||
|
$ ls
|
||||||
|
dir ltnzjbl
|
||||||
|
187917 mjjj.svp
|
||||||
|
dir nvgrzrbr
|
||||||
|
dir pngcwl
|
||||||
|
$ cd ltnzjbl
|
||||||
|
$ ls
|
||||||
|
151460 jmc.zjf
|
||||||
|
252590 tchbjclg
|
||||||
|
$ cd ..
|
||||||
|
$ cd nvgrzrbr
|
||||||
|
$ ls
|
||||||
|
193994 qbpvrr.tsv
|
||||||
|
152776 tchbjclg.swm
|
||||||
|
243770 vqzs.hjp
|
||||||
|
$ cd ..
|
||||||
|
$ cd pngcwl
|
||||||
|
$ ls
|
||||||
|
74603 bddslhrg
|
||||||
|
288915 vjchlsrc.cmh
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd hwfm
|
||||||
|
$ ls
|
||||||
|
dir qbpvrr
|
||||||
|
92630 vjchlsrc.cmh
|
||||||
|
$ cd qbpvrr
|
||||||
|
$ ls
|
||||||
|
dir vlwbhgnv
|
||||||
|
$ cd vlwbhgnv
|
||||||
|
$ ls
|
||||||
|
5248 tchbjclg
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd mjjj
|
||||||
|
$ ls
|
||||||
|
255751 qfccg.crl
|
||||||
|
$ cd ..
|
||||||
|
$ cd mlhwcg
|
||||||
|
$ ls
|
||||||
|
115287 pfmch.ncr
|
||||||
|
$ cd ..
|
||||||
|
$ cd tchbjclg
|
||||||
|
$ ls
|
||||||
|
dir jgrmrzlh
|
||||||
|
155900 jpljl.fnw
|
||||||
|
$ cd jgrmrzlh
|
||||||
|
$ ls
|
||||||
|
dir mjjj
|
||||||
|
96116 qbpvrr
|
||||||
|
270714 tqcgmwbj.bcn
|
||||||
|
$ cd mjjj
|
||||||
|
$ ls
|
||||||
|
59415 dpdgtz
|
||||||
|
47363 twghmhf.qhf
|
||||||
|
194434 vbnppl.fws
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd tqtsl
|
||||||
|
$ ls
|
||||||
|
34243 qqf
|
||||||
|
131945 qtplsbwd
|
||||||
|
$ cd ..
|
||||||
|
$ cd vpn
|
||||||
|
$ ls
|
||||||
|
286479 sdmmmds.nwt
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd qtdh
|
||||||
|
$ ls
|
||||||
|
215668 nhfpn
|
||||||
|
$ cd ..
|
||||||
|
$ cd tbdff
|
||||||
|
$ ls
|
||||||
|
48347 qfccg.crl
|
||||||
|
178091 vbsqcnmm
|
||||||
|
$ cd ..
|
||||||
|
$ cd tchbjclg
|
||||||
|
$ ls
|
||||||
|
dir bddslhrg
|
||||||
|
dir cwn
|
||||||
|
251313 hll.ctt
|
||||||
|
dir qbpvrr
|
||||||
|
dir scsp
|
||||||
|
$ cd bddslhrg
|
||||||
|
$ ls
|
||||||
|
dir pqtj
|
||||||
|
185542 qbpvrr
|
||||||
|
dir tchbjclg
|
||||||
|
$ cd pqtj
|
||||||
|
$ ls
|
||||||
|
141015 jtwpnb.wvf
|
||||||
|
17260 lgvbns.pvt
|
||||||
|
$ cd ..
|
||||||
|
$ cd tchbjclg
|
||||||
|
$ ls
|
||||||
|
dir btsmnvn
|
||||||
|
237149 hhgbtf.zzs
|
||||||
|
258581 lwvfgbdj.gpp
|
||||||
|
31561 mjjj
|
||||||
|
240514 qbwq
|
||||||
|
90283 qfccg.crl
|
||||||
|
$ cd btsmnvn
|
||||||
|
$ ls
|
||||||
|
dir bddslhrg
|
||||||
|
dir qbpvrr
|
||||||
|
$ cd bddslhrg
|
||||||
|
$ ls
|
||||||
|
144007 tchbjclg.qql
|
||||||
|
$ cd ..
|
||||||
|
$ cd qbpvrr
|
||||||
|
$ ls
|
||||||
|
211075 mjjj
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd cwn
|
||||||
|
$ ls
|
||||||
|
67908 gldrw
|
||||||
|
231112 qbpvrr
|
||||||
|
$ cd ..
|
||||||
|
$ cd qbpvrr
|
||||||
|
$ ls
|
||||||
|
4482 fzjdz.lzr
|
||||||
|
134244 rnscgpv.tvg
|
||||||
|
211213 tmvzclz.mjg
|
||||||
|
107771 wvzs.nns
|
||||||
|
$ cd ..
|
||||||
|
$ cd scsp
|
||||||
|
$ ls
|
||||||
|
30654 zzdpcnmt.qbf
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd hsjww
|
||||||
|
$ ls
|
||||||
|
12233 crzr.jrf
|
||||||
|
dir qbpvrr
|
||||||
|
$ cd qbpvrr
|
||||||
|
$ ls
|
||||||
|
dir bddslhrg
|
||||||
|
54681 fzjdz.wzv
|
||||||
|
212670 hpmzrq
|
||||||
|
dir mcvbjw
|
||||||
|
138779 nhsdjmjj.szh
|
||||||
|
dir nllvlzfr
|
||||||
|
217275 tqcgmwbj.bcn
|
||||||
|
$ cd bddslhrg
|
||||||
|
$ ls
|
||||||
|
261081 lbdqrjjp.ffj
|
||||||
|
244506 wvn.ttr
|
||||||
|
55843 zbng.zmm
|
||||||
|
$ cd ..
|
||||||
|
$ cd mcvbjw
|
||||||
|
$ ls
|
||||||
|
149468 rcvbqhh
|
||||||
|
$ cd ..
|
||||||
|
$ cd nllvlzfr
|
||||||
|
$ ls
|
||||||
|
162791 rdrhrnzc
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ptfsh
|
||||||
|
$ ls
|
||||||
|
163959 bddslhrg.wwb
|
||||||
|
dir hthjj
|
||||||
|
dir hwpv
|
||||||
|
222930 ndvqsfbs.rfb
|
||||||
|
dir rgrcfr
|
||||||
|
dir rvrsrfl
|
||||||
|
95254 tqcgmwbj.bcn
|
||||||
|
282463 vjchlsrc.cmh
|
||||||
|
181699 zzdpcnmt.qbf
|
||||||
|
$ cd hthjj
|
||||||
|
$ ls
|
||||||
|
101683 dthb.hwv
|
||||||
|
112759 mjmdfgl.vdz
|
||||||
|
191795 whtfg
|
||||||
|
$ cd ..
|
||||||
|
$ cd hwpv
|
||||||
|
$ ls
|
||||||
|
244334 fzjdz.pgp
|
||||||
|
$ cd ..
|
||||||
|
$ cd rgrcfr
|
||||||
|
$ ls
|
||||||
|
dir wpslpf
|
||||||
|
$ cd wpslpf
|
||||||
|
$ ls
|
||||||
|
87578 mjjj
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd rvrsrfl
|
||||||
|
$ ls
|
||||||
|
dir qbpvrr
|
||||||
|
$ cd qbpvrr
|
||||||
|
$ ls
|
||||||
|
dir gqv
|
||||||
|
dir hfg
|
||||||
|
dir lpbc
|
||||||
|
dir ppp
|
||||||
|
16805 snlhrz
|
||||||
|
29365 wnd.mdj
|
||||||
|
$ cd gqv
|
||||||
|
$ ls
|
||||||
|
229300 tqcgmwbj.bcn
|
||||||
|
$ cd ..
|
||||||
|
$ cd hfg
|
||||||
|
$ ls
|
||||||
|
1680 hcmmjtbq.wcv
|
||||||
|
$ cd ..
|
||||||
|
$ cd lpbc
|
||||||
|
$ ls
|
||||||
|
100372 lqf
|
||||||
|
88156 sddtdz
|
||||||
|
$ cd ..
|
||||||
|
$ cd ppp
|
||||||
|
$ ls
|
||||||
|
79608 tchbjclg
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd qbpvrr
|
||||||
|
$ ls
|
||||||
|
22955 zzdpcnmt.qbf
|
||||||
|
$ cd ..
|
||||||
|
$ cd ..
|
||||||
|
$ cd wtm
|
||||||
|
$ ls
|
||||||
|
4584 qfccg.crl
|
||||||
|
$ cd ..
|
||||||
|
$ cd ztrz
|
||||||
|
$ ls
|
||||||
|
187968 fzjdz.thw
|
85
2022/07/main.py
Normal file
85
2022/07/main.py
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
from typing import Optional
|
||||||
|
|
||||||
|
from utils.input import read_input_lines
|
||||||
|
|
||||||
|
|
||||||
|
class Directory:
|
||||||
|
def __init__(self, name: str, parent: Optional["Directory"]) -> None:
|
||||||
|
self.name = name
|
||||||
|
self.parent = parent if parent is not None else self
|
||||||
|
self.child_directories = dict()
|
||||||
|
self.child_files = dict()
|
||||||
|
self.total_size = None
|
||||||
|
|
||||||
|
def record_directory(self, name: str) -> None:
|
||||||
|
if name not in self.child_directories:
|
||||||
|
self.child_directories[name] = Directory(name, self)
|
||||||
|
self.total_size = None
|
||||||
|
|
||||||
|
def record_file(self, name: str, size: int) -> None:
|
||||||
|
self.child_files[name] = size
|
||||||
|
self.total_size = None
|
||||||
|
|
||||||
|
def get_size(self) -> int:
|
||||||
|
if self.total_size is None:
|
||||||
|
self.total_size = sum(self.child_files.values()) + sum(child.get_size() for child in self.child_directories.values())
|
||||||
|
|
||||||
|
return self.total_size
|
||||||
|
|
||||||
|
def collect_directories(self, target_list: list["Directory"]) -> None:
|
||||||
|
target_list.append(self)
|
||||||
|
|
||||||
|
for child in self.child_directories.values():
|
||||||
|
child.collect_directories(target_list)
|
||||||
|
|
||||||
|
|
||||||
|
class Session:
|
||||||
|
def __init__(self) -> None:
|
||||||
|
self.root_directory = Directory("/", None)
|
||||||
|
self.current_directory = self.root_directory
|
||||||
|
|
||||||
|
def handle_command(self, command: str) -> None:
|
||||||
|
if command == "ls":
|
||||||
|
return
|
||||||
|
|
||||||
|
(left, right) = command.split(" ", maxsplit = 1)
|
||||||
|
|
||||||
|
if left == "cd":
|
||||||
|
if right == "/":
|
||||||
|
self.current_directory = self.root_directory
|
||||||
|
elif right == "..":
|
||||||
|
self.current_directory = self.current_directory.parent
|
||||||
|
else:
|
||||||
|
self.current_directory = self.current_directory.child_directories[right]
|
||||||
|
|
||||||
|
def handle_listing(self, size_or_type: str, name: str) -> None:
|
||||||
|
if size_or_type == "dir":
|
||||||
|
self.current_directory.record_directory(name)
|
||||||
|
else:
|
||||||
|
self.current_directory.record_file(name, int(size_or_type))
|
||||||
|
|
||||||
|
|
||||||
|
session = Session()
|
||||||
|
|
||||||
|
for line in read_input_lines():
|
||||||
|
(left, right) = line.split(" ", maxsplit = 1)
|
||||||
|
|
||||||
|
if left == "$":
|
||||||
|
session.handle_command(right)
|
||||||
|
else:
|
||||||
|
session.handle_listing(left, right)
|
||||||
|
|
||||||
|
all_directories = list()
|
||||||
|
session.root_directory.collect_directories(all_directories)
|
||||||
|
|
||||||
|
total_size_of_interesting_directories = sum(directory.get_size() for directory in all_directories if directory.get_size() <= 100_000)
|
||||||
|
print(f"Total size of interesting directories: {total_size_of_interesting_directories}")
|
||||||
|
|
||||||
|
total_disk_size = 70_000_000
|
||||||
|
needed_free_disk_size = 30_000_000
|
||||||
|
|
||||||
|
current_free_disk_size = total_disk_size - session.root_directory.get_size()
|
||||||
|
minimum_folder_size_to_delete = needed_free_disk_size - current_free_disk_size
|
||||||
|
|
||||||
|
size_of_deleted_folder = min(folder.get_size() for folder in all_directories if folder.get_size() >= minimum_folder_size_to_delete)
|
||||||
|
print(f"Size of deleted folder: {size_of_deleted_folder}")
|
99
2022/08/input.txt
Normal file
99
2022/08/input.txt
Normal file
@ -0,0 +1,99 @@
|
|||||||
|
003112220410413101104044022234320204233341435252223642044225451531421012104343030211442433410302111
|
||||||
|
301233004003313130222434121135033231250505241131342032404032560542233000343455552123100410402211201
|
||||||
|
111301041221333142533352050250154136146324550411565615444115604102531135302000320033233340431313123
|
||||||
|
011312210420442043155233305201305643445224334303310253225205601265233454400214114322131420224022313
|
||||||
|
130102441231200141254202121022423405224443210463250415204410624313613034320040015223211432442333110
|
||||||
|
133121132322223054104323242043651144066341346000104210124535555236324451132555525220523220023202433
|
||||||
|
110011123024113203143145243605143331512223606564503661350336662505131254503242354031400131012444222
|
||||||
|
221400422202335053520044325014041432662161415523526711633662600635304000112322014001533351130303321
|
||||||
|
030222020044115331004065013253364503664435753416641653716424535324654054023321025154331103034342414
|
||||||
|
030331241153233040140314112524504535172167445223426653152774166352145410064425434012002122431142343
|
||||||
|
224111232453145423354550035141103644127571711431336236226321752314754510214316215104550522141301020
|
||||||
|
424321022432003551434012134531644165753146143232242275633762323631713541330463531053004424012234010
|
||||||
|
221233440041435131321565604060121637542135243721227576264551457171313165211546132314103242442012133
|
||||||
|
301320232222024200651041405631257577625236256225367443317773421262762172454463051224654015452230401
|
||||||
|
124314451244222611016300517414362722551374735555353871173242751564427674344212032442221554524035432
|
||||||
|
000210412345203005364660077252742673773341654558568632445755573574757433452636410261362004114032013
|
||||||
|
333130514223252440150314572132443233363783556666363566733363262631651361523573335361463232143300044
|
||||||
|
400403124212626240015541437753711632635435857234865883574647337436376563235264524230225211320425534
|
||||||
|
430312520241033613150127256341412352564548243842255622454762832274857163157242366022041262252034150
|
||||||
|
125211521340246341461723355443362487532437274863758283488567453538667642367654751321503343220351304
|
||||||
|
015045453331430626273664314125778234645658386774837783464366334264476243327176571544650404453253132
|
||||||
|
354034323663213666746174754737374552772744668787244468236435632534753452366177147233020313054042345
|
||||||
|
305241054630156250416544221136444247327848337737584777837244467756426322644474332262330430251551212
|
||||||
|
100144030632532041231474166555527386344645548655948476835366757558682728623657547471260405014131510
|
||||||
|
155501551351164622444476154658383338677369856795967346765977585753438378656352723127554031451225340
|
||||||
|
213252046404053134327512554784653544697439375473948735593644477348334755453317243676612665133404310
|
||||||
|
022440140420166534174335264388542568833984445757393864997986883894574577853347367415453352646352541
|
||||||
|
303425632364032563633467847288735478557676734393879573848466463466672455482853676764477400452414425
|
||||||
|
421140260266576264621526686828328833799894373434775335763857585383998562862724435337211515426106224
|
||||||
|
251234063153345361761483764445395779384568938899876568577359785776678952473247274437226445141011143
|
||||||
|
124165362100637756715727365876646574835535677777467785479666667584536895483528343623556220650044411
|
||||||
|
523533116461715454347526758528694839737349689796485884675949699354664766465728468324363766204426020
|
||||||
|
011655232111314171647378426863359767797699886798595874554677869353593448485338287251255363024600501
|
||||||
|
201454444103773472628888556987787587788889498545597569965587748496753787964648276727241677205552530
|
||||||
|
022050015673621733475438774338498584975649879876857968775687577968447843939528275674512475556245535
|
||||||
|
415145246426622536566872225778388854879897849855475687687595454675468637795674534385355242230005213
|
||||||
|
515410462156777244275234668693874665788796767699675757959578987749863457937753862877526274731341533
|
||||||
|
532441044352764132482273798897585496755464759898898996955476545867443535986538526852746625533463346
|
||||||
|
042116466642255478273735578633656564997786577695957789988869999965866866547392358543326526744105124
|
||||||
|
305463642721567264236826357995536786844968968785757997557699474697669835738584868845834527260231552
|
||||||
|
066231251534151145564875937345768799895756579656987695996797768779596848379994862646436522463360266
|
||||||
|
506513057363414584637639439854956668854878865987777598756576697549657897644947484484534264535522136
|
||||||
|
131666244551736787837659743739478747677995596779697659755568679946768553647438363837764527562663652
|
||||||
|
424404413335566473356634745356959967996577965786978695878778775749964899347635788855331715645156443
|
||||||
|
366410447316422733452686338845457787759555776998978979667795556665499755678449775626855353212651324
|
||||||
|
302136251253517685366593955978666557656668675898896669776695986549696689467499828826265743355612425
|
||||||
|
546506521534743584874443398869667685788797956777788696997955989646664668879679457843885333126334344
|
||||||
|
362262154313747445367249673496655464765879658679769897687679766789496785648597346877862642316202103
|
||||||
|
026226125354532563527338467655476495659657769687899897897899856576869585587683926347427571714351012
|
||||||
|
324246031677535478765836973778855888768885696676889798687785885666785975868394627754287365751563132
|
||||||
|
031351623136767474878299634934847976977866799698978866969865695657475657893553946224747277645245120
|
||||||
|
026056143144572747422538333594694756756655696798979976879958687957995676939686658475475623336500612
|
||||||
|
662533125413523284737634669357979456995895856799797767679899585888899799675553357648455413641663031
|
||||||
|
014206153225663545455694774965848955686699676678777689996997596965668976646983688667633463335404141
|
||||||
|
413012617325174456878669973969459678955956597997687976869576778966464554568469886777721516427616513
|
||||||
|
502662203642612255238447486939957458967857897679766997696655868558575999589335922456844736112131654
|
||||||
|
212661502516734223324889447354689969855787756889968698877896757975877697383989627364337421772343024
|
||||||
|
062105566125733258245733457473775547779958796868868895787767755559647545379345865238624356123242000
|
||||||
|
402335614754636628236824679555597465548989986755969565969678898559987586856955673832271674166105362
|
||||||
|
451334645753376162243335579543677879955598768556565759756869877876795947966569855573232735534601241
|
||||||
|
500262052615557247375888358635954578969966856685689678868986899965887995757987425824514566556143415
|
||||||
|
025221464647151347477323745438738647477798995699788989796688598687779795846437577837865212462025305
|
||||||
|
506261641542645445623578634938859695857548567987658895685668887664467397754563764284864222243613255
|
||||||
|
544001251632514343434242438697698767785468785559797877757559476976744589553445545348132556324315401
|
||||||
|
312662335054751647576346847944998349986995969646958568675577475645539379875732364426714676752004534
|
||||||
|
442336642122316123757636234859863735657746598877646757975758669549947438746824526434264347133600103
|
||||||
|
110222605363451462773826376864836593598856459788567868745977445869448964569655348846536363204056350
|
||||||
|
000101232124176476234372634789857987399659768658796566947966644948468844584756623732364133065443412
|
||||||
|
134465433226374477324823357757785535937975665949586889647565456766846389552458234767667646466124353
|
||||||
|
421406224300535763513347544755878674693949665984559799965894778876384773264625738631365460212615513
|
||||||
|
452351220036426717772576544574486575445936589965659469684553983864958887588836456352652752044465624
|
||||||
|
513131310021516677236857346343788436737376979889979498674877368855367664436225742117611411543534241
|
||||||
|
025341550553445563557374338552585545787433393754685485676457956894674542662544752536711135543323540
|
||||||
|
535152616216423251726174753447757785566344854848638858756838495369785886445488572266324260520452211
|
||||||
|
040010242452167571763413223445374499838658479769797468459895353937866635767567612446231533425561512
|
||||||
|
540233435611063354343623584674548775576735445736954663985773597646587532834332126771664204465150223
|
||||||
|
115125460640513624264577427672484376565394997956949478368583668555354324253116433334364541633501141
|
||||||
|
325235035031330065764773672233563447278366899833655673943396323666327273534372213517324021336301134
|
||||||
|
210455052102126060367721574443448283734742249765698995536842573866568587565571317173455040136014133
|
||||||
|
130303041444343616551636147765524538863657233824485633222587838375574238775244261440413305250410213
|
||||||
|
215411311040450233266672334763832288583822422248882386376826865647256855122326112462046245434214110
|
||||||
|
230231555011111141243461222762213386584878775753548542777758687642766773174237314624160241043301041
|
||||||
|
323544455001621231632772663352437368846236258422868628887825466644733647626344222306513541033345051
|
||||||
|
103143140115330535101443674523313247636278477357763543634765673375252223123145511514215131041302240
|
||||||
|
232425305344242122243634141575125456216884578682284677823883878251534364736772005201664151453532422
|
||||||
|
102015414143426060302001452111353522415644252842283555326642135161755673127454553246636405351210230
|
||||||
|
434225550123100466121402111553624464277266354226553673463535217337233242261322143516321221202244233
|
||||||
|
241043514014314144343662453056766274716234347315115145214653247673432611160552306341450310405413111
|
||||||
|
242112143335044304622645260260424573275613637141734623226773527441742321265241643455134145215344111
|
||||||
|
111301110035433343532532505066367716542154757534155161173124736561116131435620565213531350550432142
|
||||||
|
242323242143224035106205224411500635634124323342513747342475634262646442514656422055112331122023144
|
||||||
|
002021344233114150010341663531513334522142253265466242366366534525551142525131661102314124401314042
|
||||||
|
024004104024242151413420354625126365606642452553232242411563750634302214411623615524332515123123121
|
||||||
|
322320201030004104054100060453523451362415465573527326430616603635233444523531105134335533102202414
|
||||||
|
013231044323002420215041311645066036204353535300445225661352044506065120312154410321400034312200320
|
||||||
|
031030413344440552442114452066553136026033443442226333515665300213012326102141034413121232242040400
|
||||||
|
133131302014414220215344004521556454235620502443013233464014064103264525100404050140223431001414000
|
||||||
|
221120341111243124154321401255010441026151433422443520262166251632146441120442553301443334201231200
|
||||||
|
021222222103332103301112520131442023663055232552042262505152050120510455441325453404132240001402111
|
33
2022/08/main.py
Normal file
33
2022/08/main.py
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
from utils.input import read_input_lines
|
||||||
|
|
||||||
|
lines = read_input_lines()
|
||||||
|
grid = list(map(lambda line: list(map(int, line)), lines))
|
||||||
|
rows = len(grid)
|
||||||
|
cols = len(grid[0])
|
||||||
|
|
||||||
|
|
||||||
|
def is_visible(x: int, y: int) -> bool:
|
||||||
|
if x <= 0 or y <= 0:
|
||||||
|
return True
|
||||||
|
if x >= cols - 1 or y >= rows - 1:
|
||||||
|
return True
|
||||||
|
|
||||||
|
height = grid[x][y]
|
||||||
|
|
||||||
|
if all(grid[x_adj][y] < height for x_adj in range(0, x)):
|
||||||
|
return True
|
||||||
|
|
||||||
|
if all(grid[x_adj][y] < height for x_adj in range(x + 1, cols)):
|
||||||
|
return True
|
||||||
|
|
||||||
|
if all(grid[x][y_adj] < height for y_adj in range(0, y)):
|
||||||
|
return True
|
||||||
|
|
||||||
|
if all(grid[x][y_adj] < height for y_adj in range(y + 1, rows)):
|
||||||
|
return True
|
||||||
|
|
||||||
|
return False
|
||||||
|
|
||||||
|
|
||||||
|
visible_trees = sum(is_visible(x, y) for y in range(rows) for x in range(cols))
|
||||||
|
print(f"Visible trees: {visible_trees}")
|
@ -86,5 +86,5 @@ The versions should not matter, but I used Visual Studio 2019 with `MSVC v142 (1
|
|||||||
| 2021 | 04 | Kotlin | / | 2022 | 04 | Python |
|
| 2021 | 04 | Kotlin | / | 2022 | 04 | Python |
|
||||||
| 2021 | 05 | Kotlin | / | 2022 | 05 | Python |
|
| 2021 | 05 | Kotlin | / | 2022 | 05 | Python |
|
||||||
| 2021 | 06 | Kotlin | / | 2022 | 06 | Python |
|
| 2021 | 06 | Kotlin | / | 2022 | 06 | Python |
|
||||||
| 2021 | 07 | Kotlin | / | | | |
|
| 2021 | 07 | Kotlin | / | 2022 | 07 | Python |
|
||||||
| 2021 | 08 | Kotlin | / | | | |
|
| 2021 | 08 | Kotlin | / | 2022 | 08 | Python |
|
||||||
|
Loading…
Reference in New Issue
Block a user