Advertisement
VirKato

AoC Day 7

Dec 7th, 2022
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 27.95 KB | Source Code | 0 0
  1. package org.advent.of.code.y2022;
  2.  
  3. import java.util.*;
  4.  
  5.  
  6. public class Line7 {
  7.  
  8.     static class Tree {
  9.         private final String name;
  10.         private final boolean isFile;
  11.         private final List<Tree> items;
  12.         private Tree parent = null;
  13.         private long size;
  14.  
  15.         public Tree(String name, boolean isFile, long size) {
  16.             this.name = name;
  17.             this.isFile = isFile;
  18.             this.size = size;
  19.             items = new LinkedList<>();
  20.         }
  21.  
  22.         public void add(Tree tree) {
  23.             tree.parent = this;
  24.             items.add(tree);
  25.         }
  26.  
  27.         public Tree go(String name) {
  28.             for (Tree item : items) {
  29.                 if (!item.isFile && item.name.equals(name)) return item;
  30.             }
  31.             throw new RuntimeException("Нет такой папки");
  32.         }
  33.  
  34.         public long getSize() {
  35.             if (!isFile) {
  36.                 size = 0;
  37.                 for (Tree item : items) size += item.getSize();
  38.             }
  39.             return size;
  40.         }
  41.     }
  42.  
  43.  
  44.     public static void main(String[] args) {
  45.         solution(100000L, 70_000_000L, 30_000_000L);
  46.     }
  47.  
  48.  
  49.     /***
  50.      * 1. Найти сумму размеров всех папок удовлетворяющих условию
  51.      * 2. Найти папку с минимальным размером необходимым для освобождения места
  52.      * @param LIMIT максимальный размер папки
  53.      * @param ALL_SPACE всё доступное место на диске
  54.      * @param NEED_FREE требуется оставить свободным
  55.      */
  56.     private static void solution(final long LIMIT, final long ALL_SPACE, final long NEED_FREE) {
  57.         Tree start = new Tree("\\", false, 0);
  58.         Tree tree = start;
  59.  
  60.         List<Tree> folders = new LinkedList<>();
  61.  
  62.         // Строим дерево файловой системы
  63.  
  64.         Scanner in = new Scanner(data);
  65.         while (in.hasNextLine()) {
  66.             String token = in.next();
  67.             switch (token) {
  68.                 case "$":
  69.                     token = in.next();
  70.                     switch (token) {
  71.                         case "cd":
  72.                             token = in.next();
  73.                             switch (token) {
  74.                                 case "/":
  75.                                     break;
  76.                                 case "..":
  77.                                     tree = tree.parent;
  78.                                     break;
  79.                                 default:
  80.                                     tree = tree.go(token);
  81.                                     break;
  82.                             }
  83.                             break;
  84.                         case "ls":
  85.                             break;
  86.                     }
  87.                     break;
  88.                 case "dir":
  89.                     Tree folder = new Tree(in.next(), false, 0);
  90.                     tree.add(folder);
  91.                     // папки откладываем в сторонку для последующего подсчёта
  92.                     folders.add(folder);
  93.                     break;
  94.                 default:
  95.                     long size = Long.parseLong(token);
  96.                     tree.add(new Tree(in.next(), true, size));
  97.             }
  98.         }
  99.  
  100.         // 1 задание
  101.  
  102.         long result = 0;
  103.         for (Tree f : folders) {
  104.             long size = f.getSize();
  105.             result += size < LIMIT ? size : 0;
  106.         }
  107.  
  108.         System.out.println("Сумма размеров каталогов меньших 100_000: " + result);
  109.  
  110.         // 2. задание
  111.  
  112.         long allSize = start.getSize();
  113.         System.out.println("Total: " + allSize);
  114.  
  115.         long free = ALL_SPACE - allSize;
  116.         System.out.println("Free: " + free);
  117.  
  118.         long need = NEED_FREE - free;
  119.         System.out.println("Need: " + need);
  120.  
  121.         Tree removed = new Tree("NONE", false, ALL_SPACE);
  122.         for (Tree f : folders) {
  123.             long size = f.getSize();
  124.             if (size >= need && removed.size > size) removed = f;
  125.         }
  126.  
  127.         System.out.println("To remove: " + removed.name + " = " + removed.getSize());
  128.         System.out.println("Now free: " + (ALL_SPACE - allSize + removed.getSize()));
  129.     }
  130.  
  131.     // 1543140 для limit 100000
  132.     // 1117448 для оставления минимум 30_000_000 свободными
  133.  
  134.     private static String data = """
  135.            $ cd /
  136.            $ ls
  137.            dir dcvzbqf
  138.            23804 gsdpmrq.bsz
  139.            24936 nfngbl.mcn
  140.            178747 plw.frm
  141.            dir qdtw
  142.            dir qmfvph
  143.            $ cd dcvzbqf
  144.            $ ls
  145.            dir gfvl
  146.            $ cd gfvl
  147.            $ ls
  148.            104564 dnbmm.bgc
  149.            $ cd ..
  150.            $ cd ..
  151.            $ cd qdtw
  152.            $ ls
  153.            dir fsj
  154.            dir jwfbvmds
  155.            216592 pcg.wnr
  156.            dir pwnhpm
  157.            dir qbrpq
  158.            dir wdc
  159.            dir wpw
  160.            dir zbfgmw
  161.            $ cd fsj
  162.            $ ls
  163.            118575 ltbr.mdf
  164.            $ cd ..
  165.            $ cd jwfbvmds
  166.            $ ls
  167.            dir bbvg
  168.            dir bds
  169.            dir clvljpb
  170.            44460 gwbbbgj.hbs
  171.            dir hzqlb
  172.            dir jpvnzhf
  173.            61025 trdm.qps
  174.            $ cd bbvg
  175.            $ ls
  176.            219031 zbzgvsb
  177.            94339 zhfmsb.lvv
  178.            $ cd ..
  179.            $ cd bds
  180.            $ ls
  181.            133483 hzqlb
  182.            $ cd ..
  183.            $ cd clvljpb
  184.            $ ls
  185.            103511 bmm.dwc
  186.            121211 clvljpb.fzn
  187.            158145 dnbmm.fmm
  188.            74998 pcg.wnr
  189.            dir psvtz
  190.            $ cd psvtz
  191.            $ ls
  192.            dir gdj
  193.            167697 pcgjgc.wgl
  194.            2613 qchfgv
  195.            91712 qsdzj.jng
  196.            $ cd gdj
  197.            $ ls
  198.            133897 qchfgv
  199.            dir vmcshh
  200.            93805 zgmvb.jfg
  201.            $ cd vmcshh
  202.            $ ls
  203.            200517 zgwwvb.pcs
  204.            $ cd ..
  205.            $ cd ..
  206.            $ cd ..
  207.            $ cd ..
  208.            $ cd hzqlb
  209.            $ ls
  210.            dir dnbmm
  211.            $ cd dnbmm
  212.            $ ls
  213.            223576 msrbz.wjs
  214.            $ cd ..
  215.            $ cd ..
  216.            $ cd jpvnzhf
  217.            $ ls
  218.            20581 nfngbl.mcn
  219.            $ cd ..
  220.            $ cd ..
  221.            $ cd pwnhpm
  222.            $ ls
  223.            dir clvljpb
  224.            33727 hzqlb.zpp
  225.            39037 lfjjf.pjt
  226.            163662 mbwfhq.cjj
  227.            236292 nfngbl.mcn
  228.            189576 zvbgnbvf
  229.            $ cd clvljpb
  230.            $ ls
  231.            dir clvljpb
  232.            212906 clvljpb.pls
  233.            214564 dnm
  234.            dir fvgbsft
  235.            230034 hzqlb.jvz
  236.            48101 plw.frm
  237.            237902 qchfgv
  238.            $ cd clvljpb
  239.            $ ls
  240.            dir hzqlb
  241.            dir zhq
  242.            $ cd hzqlb
  243.            $ ls
  244.            189238 cvgp
  245.            dir gjg
  246.            $ cd gjg
  247.            $ ls
  248.            167082 ttltfz.bvz
  249.            $ cd ..
  250.            $ cd ..
  251.            $ cd zhq
  252.            $ ls
  253.            203202 nfngbl.mcn
  254.            212148 qhnnr.dhs
  255.            $ cd ..
  256.            $ cd ..
  257.            $ cd fvgbsft
  258.            $ ls
  259.            dir fzhwsjf
  260.            18477 nps
  261.            dir vlplrn
  262.            dir vnbg
  263.            dir vpc
  264.            $ cd fzhwsjf
  265.            $ ls
  266.            91220 clvljpb.png
  267.            235721 pcg.wnr
  268.            61559 qchfgv
  269.            70762 vpr.nlc
  270.            $ cd ..
  271.            $ cd vlplrn
  272.            $ ls
  273.            260247 qrtnfmln.tpv
  274.            $ cd ..
  275.            $ cd vnbg
  276.            $ ls
  277.            43069 ttltfz.mzr
  278.            dir wfb
  279.            58219 zgwwvb.pcs
  280.            272132 zhq.mrw
  281.            $ cd wfb
  282.            $ ls
  283.            107068 clvljpb.mtp
  284.            $ cd ..
  285.            $ cd ..
  286.            $ cd vpc
  287.            $ ls
  288.            185602 dnbmm.hfm
  289.            100399 hzqlb.vtn
  290.            259486 pcg.wnr
  291.            $ cd ..
  292.            $ cd ..
  293.            $ cd ..
  294.            $ cd ..
  295.            $ cd qbrpq
  296.            $ ls
  297.            138169 cntvzqfm.hgp
  298.            216598 dnbmm.lhs
  299.            116696 nfngbl.mcn
  300.            35315 phf.rvn
  301.            $ cd ..
  302.            $ cd wdc
  303.            $ ls
  304.            270492 ghdzdq.ghg
  305.            137119 lnt.nsd
  306.            $ cd ..
  307.            $ cd wpw
  308.            $ ls
  309.            dir dnbmm
  310.            156266 jgfv.cpp
  311.            156947 lvlqcrrs.djl
  312.            dir lvznwbpg
  313.            12199 nfngbl.mcn
  314.            54105 nlsp
  315.            86737 zhq.wmz
  316.            $ cd dnbmm
  317.            $ ls
  318.            138125 lth.hcq
  319.            80844 nhh.gzc
  320.            149596 ttltfz.ntn
  321.            $ cd ..
  322.            $ cd lvznwbpg
  323.            $ ls
  324.            99156 ldtst.dcr
  325.            217350 pcg.wnr
  326.            247238 plw.frm
  327.            dir qbqpsccr
  328.            dir wnms
  329.            dir zhq
  330.            165426 zmhnzdmb.jnc
  331.            $ cd qbqpsccr
  332.            $ ls
  333.            272199 pcg.wnr
  334.            219600 wpjqjm.qwr
  335.            257473 zhq.zmq
  336.            $ cd ..
  337.            $ cd wnms
  338.            $ ls
  339.            dir ttltfz
  340.            $ cd ttltfz
  341.            $ ls
  342.            dir btm
  343.            $ cd btm
  344.            $ ls
  345.            dir hzqlb
  346.            $ cd hzqlb
  347.            $ ls
  348.            dir ttltfz
  349.            $ cd ttltfz
  350.            $ ls
  351.            204980 hzqlb.hhm
  352.            $ cd ..
  353.            $ cd ..
  354.            $ cd ..
  355.            $ cd ..
  356.            $ cd ..
  357.            $ cd zhq
  358.            $ ls
  359.            154868 srdfz
  360.            $ cd ..
  361.            $ cd ..
  362.            $ cd ..
  363.            $ cd zbfgmw
  364.            $ ls
  365.            dir fcjwpgz
  366.            dir ttltfz
  367.            dir zhq
  368.            $ cd fcjwpgz
  369.            $ ls
  370.            dir jltvg
  371.            9958 qchfgv
  372.            dir wwqrb
  373.            $ cd jltvg
  374.            $ ls
  375.            6370 bssvrjdq.mnr
  376.            $ cd ..
  377.            $ cd wwqrb
  378.            $ ls
  379.            157805 npdl
  380.            237057 qchfgv
  381.            dir twrp
  382.            259572 vptsgw
  383.            176388 zgwwvb.pcs
  384.            91956 zhq
  385.            $ cd twrp
  386.            $ ls
  387.            dir sfvntjwf
  388.            $ cd sfvntjwf
  389.            $ ls
  390.            68331 hdwfg.jrl
  391.            $ cd ..
  392.            $ cd ..
  393.            $ cd ..
  394.            $ cd ..
  395.            $ cd ttltfz
  396.            $ ls
  397.            41183 plw.frm
  398.            $ cd ..
  399.            $ cd zhq
  400.            $ ls
  401.            32950 dmzbmrdr.gtq
  402.            dir zhq
  403.            $ cd zhq
  404.            $ ls
  405.            195502 dmgmwbf
  406.            $ cd ..
  407.            $ cd ..
  408.            $ cd ..
  409.            $ cd ..
  410.            $ cd qmfvph
  411.            $ ls
  412.            dir cwfh
  413.            dir dnbmm
  414.            dir mmmdpth
  415.            4841 pcg.wnr
  416.            dir prnpbn
  417.            111478 sgmg.hbs
  418.            dir ttltfz
  419.            178296 ttltfz.mjc
  420.            dir zcvfqn
  421.            dir zhq
  422.            32446 zhq.pjm
  423.            dir zpb
  424.            $ cd cwfh
  425.            $ ls
  426.            dir dswtm
  427.            dir mwzjf
  428.            $ cd dswtm
  429.            $ ls
  430.            70390 fmq.mrp
  431.            108185 qjlfnlp
  432.            189923 zhq.njc
  433.            $ cd ..
  434.            $ cd mwzjf
  435.            $ ls
  436.            122536 glmpd.mdl
  437.            108226 nfngbl.mcn
  438.            dir qbvffr
  439.            33192 ttltfz
  440.            195824 zgwwvb.pcs
  441.            $ cd qbvffr
  442.            $ ls
  443.            147595 pcg.wnr
  444.            $ cd ..
  445.            $ cd ..
  446.            $ cd ..
  447.            $ cd dnbmm
  448.            $ ls
  449.            dir cbdl
  450.            dir fhqjzf
  451.            56752 gsgrnf.mlt
  452.            dir ndp
  453.            67967 nfngbl.mcn
  454.            dir swgwdv
  455.            $ cd cbdl
  456.            $ ls
  457.            263964 dnrbtr.lbh
  458.            66120 qchfgv
  459.            dir qwvd
  460.            $ cd qwvd
  461.            $ ls
  462.            dir dnbmm
  463.            143315 mhlswpcd.lpt
  464.            199969 ncdrrp.ljf
  465.            $ cd dnbmm
  466.            $ ls
  467.            122474 pcg.wnr
  468.            $ cd ..
  469.            $ cd ..
  470.            $ cd ..
  471.            $ cd fhqjzf
  472.            $ ls
  473.            dir fnnbrlc
  474.            dir hzqlb
  475.            254128 pcg.wnr
  476.            168008 plw.frm
  477.            dir vwgvd
  478.            dir zhq
  479.            $ cd fnnbrlc
  480.            $ ls
  481.            156413 dnbmm.ngb
  482.            30790 zbfnjnnz.csg
  483.            $ cd ..
  484.            $ cd hzqlb
  485.            $ ls
  486.            267451 cgzrdpr
  487.            77460 nfngbl.mcn
  488.            205978 plw.frm
  489.            66224 sjw.ctb
  490.            212873 zgwwvb.pcs
  491.            $ cd ..
  492.            $ cd vwgvd
  493.            $ ls
  494.            161177 phdbz.tmc
  495.            $ cd ..
  496.            $ cd zhq
  497.            $ ls
  498.            dir hchlgv
  499.            218946 rfngrlz.zzr
  500.            dir zhq
  501.            $ cd hchlgv
  502.            $ ls
  503.            dir dnbmm
  504.            270943 hcpnwbd
  505.            dir hzqlb
  506.            13433 wdljw.cgn
  507.            $ cd dnbmm
  508.            $ ls
  509.            150415 pcg.wnr
  510.            $ cd ..
  511.            $ cd hzqlb
  512.            $ ls
  513.            44475 qcvwtfg.wrl
  514.            $ cd ..
  515.            $ cd ..
  516.            $ cd zhq
  517.            $ ls
  518.            155076 ggndpjzp.rpz
  519.            $ cd ..
  520.            $ cd ..
  521.            $ cd ..
  522.            $ cd ndp
  523.            $ ls
  524.            112146 nfw.htp
  525.            207815 vqwtw.qff
  526.            $ cd ..
  527.            $ cd swgwdv
  528.            $ ls
  529.            dir dmqn
  530.            dir fzgdjp
  531.            205897 hzqlb.vtm
  532.            226944 nfngbl.mcn
  533.            259443 nrfpz.vmn
  534.            136591 zgwwvb.pcs
  535.            $ cd dmqn
  536.            $ ls
  537.            258693 gdplrzt.wzf
  538.            141489 hzqlb
  539.            225488 pghz.brw
  540.            $ cd ..
  541.            $ cd fzgdjp
  542.            $ ls
  543.            206026 msthjppp
  544.            $ cd ..
  545.            $ cd ..
  546.            $ cd ..
  547.            $ cd mmmdpth
  548.            $ ls
  549.            dir clvljpb
  550.            dir hzqlb
  551.            263747 pcg.wnr
  552.            $ cd clvljpb
  553.            $ ls
  554.            168342 qhgndmj
  555.            $ cd ..
  556.            $ cd hzqlb
  557.            $ ls
  558.            dir lqvgqhw
  559.            $ cd lqvgqhw
  560.            $ ls
  561.            218324 swnjhbj.cqt
  562.            $ cd ..
  563.            $ cd ..
  564.            $ cd ..
  565.            $ cd prnpbn
  566.            $ ls
  567.            dir dndnhn
  568.            176959 gzhtvt
  569.            85765 hzqlb.clg
  570.            120691 nfngbl.mcn
  571.            245942 qchfgv
  572.            43951 zgwwvb.pcs
  573.            $ cd dndnhn
  574.            $ ls
  575.            235760 dhvvnqpt
  576.            dir hvg
  577.            dir jqvmzg
  578.            dir mhz
  579.            $ cd hvg
  580.            $ ls
  581.            167698 zqbj
  582.            $ cd ..
  583.            $ cd jqvmzg
  584.            $ ls
  585.            218904 wppv.mqz
  586.            dir zlp
  587.            $ cd zlp
  588.            $ ls
  589.            8030 wvj.gld
  590.            $ cd ..
  591.            $ cd ..
  592.            $ cd mhz
  593.            $ ls
  594.            37541 tdfvwqlj
  595.            $ cd ..
  596.            $ cd ..
  597.            $ cd ..
  598.            $ cd ttltfz
  599.            $ ls
  600.            dir dnbmm
  601.            dir ttltfz
  602.            dir wbvcf
  603.            dir wsqvpp
  604.            148645 zgwwvb.pcs
  605.            $ cd dnbmm
  606.            $ ls
  607.            116852 mjzgll.bcp
  608.            $ cd ..
  609.            $ cd ttltfz
  610.            $ ls
  611.            dir hzqlb
  612.            dir msczpj
  613.            dir mvbhn
  614.            38087 nfngbl.mcn
  615.            dir ttjbnj
  616.            dir ttltfz
  617.            dir vjj
  618.            dir zhq
  619.            dir zqgcbnrt
  620.            $ cd hzqlb
  621.            $ ls
  622.            dir jshj
  623.            dir jtjv
  624.            dir mgfwthq
  625.            dir zhq
  626.            $ cd jshj
  627.            $ ls
  628.            235605 cldpdjp.cbc
  629.            dir clvljpb
  630.            dir dzcnm
  631.            dir hmvw
  632.            dir hzqlb
  633.            dir ltpqhg
  634.            12951 qchfgv
  635.            dir wzvjft
  636.            $ cd clvljpb
  637.            $ ls
  638.            65802 lnpjlj
  639.            25402 qrtrvmwl.fms
  640.            $ cd ..
  641.            $ cd dzcnm
  642.            $ ls
  643.            dir cpnwcv
  644.            dir hzqlb
  645.            dir mjclcntf
  646.            dir qnljb
  647.            237105 rlpvq.fbf
  648.            dir zhq
  649.            $ cd cpnwcv
  650.            $ ls
  651.            27600 qbgclqc.tdd
  652.            $ cd ..
  653.            $ cd hzqlb
  654.            $ ls
  655.            168016 zhq
  656.            $ cd ..
  657.            $ cd mjclcntf
  658.            $ ls
  659.            dir clvljpb
  660.            dir qpjtr
  661.            43145 zgwwvb.pcs
  662.            $ cd clvljpb
  663.            $ ls
  664.            15025 plw.frm
  665.            $ cd ..
  666.            $ cd qpjtr
  667.            $ ls
  668.            54909 zhq
  669.            $ cd ..
  670.            $ cd ..
  671.            $ cd qnljb
  672.            $ ls
  673.            49366 clvljpb.vtg
  674.            52193 fnd.tfr
  675.            $ cd ..
  676.            $ cd zhq
  677.            $ ls
  678.            105765 dfnqhggg.cfj
  679.            dir hfzgs
  680.            135556 spff
  681.            129957 vzgjrc.cbs
  682.            $ cd hfzgs
  683.            $ ls
  684.            52456 ttltfz.fdq
  685.            31345 wcmf.hsd
  686.            $ cd ..
  687.            $ cd ..
  688.            $ cd ..
  689.            $ cd hmvw
  690.            $ ls
  691.            77175 flhlwq.rqc
  692.            dir gmvqz
  693.            252279 gnmvm
  694.            dir lmbqfhb
  695.            $ cd gmvqz
  696.            $ ls
  697.            129431 dnbmm.lwl
  698.            $ cd ..
  699.            $ cd lmbqfhb
  700.            $ ls
  701.            dir wjql
  702.            $ cd wjql
  703.            $ ls
  704.            48687 cgtbqqq.zzs
  705.            $ cd ..
  706.            $ cd ..
  707.            $ cd ..
  708.            $ cd hzqlb
  709.            $ ls
  710.            105333 mqsgqph
  711.            dir zhq
  712.            $ cd zhq
  713.            $ ls
  714.            116802 hbtlhjn.dvs
  715.            8842 pcg.wnr
  716.            211096 plw.frm
  717.            $ cd ..
  718.            $ cd ..
  719.            $ cd ltpqhg
  720.            $ ls
  721.            245821 hchndjgj.vht
  722.            229181 rcfmhrqm.ftc
  723.            214977 vgdsjg.jpd
  724.            124547 zgwwvb.pcs
  725.            $ cd ..
  726.            $ cd wzvjft
  727.            $ ls
  728.            dir fdntdf
  729.            174465 pcg.wnr
  730.            80888 qchfgv
  731.            82987 rqbzbrlv
  732.            $ cd fdntdf
  733.            $ ls
  734.            79808 cmlt.cvd
  735.            $ cd ..
  736.            $ cd ..
  737.            $ cd ..
  738.            $ cd jtjv
  739.            $ ls
  740.            262350 zww.fbl
  741.            $ cd ..
  742.            $ cd mgfwthq
  743.            $ ls
  744.            32365 gjq.rpz
  745.            $ cd ..
  746.            $ cd zhq
  747.            $ ls
  748.            dir clvljpb
  749.            dir dfdbzzz
  750.            dir lqhfbp
  751.            152633 nfngbl.mcn
  752.            $ cd clvljpb
  753.            $ ls
  754.            72966 scs
  755.            $ cd ..
  756.            $ cd dfdbzzz
  757.            $ ls
  758.            206453 cgrdn.dcw
  759.            $ cd ..
  760.            $ cd lqhfbp
  761.            $ ls
  762.            141515 nlvswpcm.fvm
  763.            68018 zgwwvb.pcs
  764.            215903 zlmdlbdp
  765.            $ cd ..
  766.            $ cd ..
  767.            $ cd ..
  768.            $ cd msczpj
  769.            $ ls
  770.            dir clvljpb
  771.            dir smhsm
  772.            dir zhq
  773.            $ cd clvljpb
  774.            $ ls
  775.            148686 fmd
  776.            244875 mhnlcz
  777.            271194 qchfgv
  778.            $ cd ..
  779.            $ cd smhsm
  780.            $ ls
  781.            219572 ptzhr
  782.            $ cd ..
  783.            $ cd zhq
  784.            $ ls
  785.            46118 qzmbgv.npf
  786.            $ cd ..
  787.            $ cd ..
  788.            $ cd mvbhn
  789.            $ ls
  790.            dir dnbmm
  791.            17522 dnbmm.hqp
  792.            dir hws
  793.            dir hwtsjfbb
  794.            dir hzqlb
  795.            dir mghrhcsj
  796.            dir mprvjd
  797.            180207 qchfgv
  798.            dir qzrshw
  799.            130436 rdgndm.clf
  800.            128601 tbdz.bgs
  801.            dir vpp
  802.            $ cd dnbmm
  803.            $ ls
  804.            dir jqv
  805.            dir lcclc
  806.            25762 rfwdnjzz.stw
  807.            172833 rpf.vqn
  808.            18217 zgwwvb.pcs
  809.            $ cd jqv
  810.            $ ls
  811.            dir cpbr
  812.            $ cd cpbr
  813.            $ ls
  814.            59543 mclpq.bpr
  815.            $ cd ..
  816.            $ cd ..
  817.            $ cd lcclc
  818.            $ ls
  819.            139444 jpwdgvb.wgz
  820.            $ cd ..
  821.            $ cd ..
  822.            $ cd hws
  823.            $ ls
  824.            42332 clvljpb
  825.            240502 clvljpb.bbn
  826.            dir jdz
  827.            37624 pcg.wnr
  828.            dir pjd
  829.            169282 plw.frm
  830.            100105 tmpll.gwm
  831.            $ cd jdz
  832.            $ ls
  833.            dir dnbmm
  834.            $ cd dnbmm
  835.            $ ls
  836.            191941 cvhvq.rzr
  837.            $ cd ..
  838.            $ cd ..
  839.            $ cd pjd
  840.            $ ls
  841.            dir bnwjc
  842.            dir pgvzhl
  843.            33261 rvpw.jlj
  844.            dir zhq
  845.            $ cd bnwjc
  846.            $ ls
  847.            159772 lqcbv.mvh
  848.            $ cd ..
  849.            $ cd pgvzhl
  850.            $ ls
  851.            159506 nfngbl.mcn
  852.            114670 qchfgv
  853.            $ cd ..
  854.            $ cd zhq
  855.            $ ls
  856.            162563 mtcd
  857.            $ cd ..
  858.            $ cd ..
  859.            $ cd ..
  860.            $ cd hwtsjfbb
  861.            $ ls
  862.            dir clvljpb
  863.            dir fqclffr
  864.            dir hzqlb
  865.            243079 rqbh.ltt
  866.            dir wtz
  867.            $ cd clvljpb
  868.            $ ls
  869.            42146 bbb
  870.            $ cd ..
  871.            $ cd fqclffr
  872.            $ ls
  873.            160031 zgwwvb.pcs
  874.            $ cd ..
  875.            $ cd hzqlb
  876.            $ ls
  877.            70936 pcg.wnr
  878.            230600 pfnfjqc.bsp
  879.            154358 plw.frm
  880.            106007 qtztf
  881.            $ cd ..
  882.            $ cd wtz
  883.            $ ls
  884.            265666 nfngbl.mcn
  885.            dir wjsrb
  886.            dir zhh
  887.            $ cd wjsrb
  888.            $ ls
  889.            76239 wqzg
  890.            $ cd ..
  891.            $ cd zhh
  892.            $ ls
  893.            11571 wptzslq.gwr
  894.            $ cd ..
  895.            $ cd ..
  896.            $ cd ..
  897.            $ cd hzqlb
  898.            $ ls
  899.            199430 gwgrtw.dzv
  900.            $ cd ..
  901.            $ cd mghrhcsj
  902.            $ ls
  903.            49307 bvtmfj.dbh
  904.            $ cd ..
  905.            $ cd mprvjd
  906.            $ ls
  907.            dir zhq
  908.            $ cd zhq
  909.            $ ls
  910.            225705 nfngbl.mcn
  911.            204180 pcg.wnr
  912.            $ cd ..
  913.            $ cd ..
  914.            $ cd qzrshw
  915.            $ ls
  916.            dir ddgs
  917.            dir hzqlb
  918.            dir lmtfhtd
  919.            157122 qchfgv
  920.            dir sjq
  921.            dir tdjh
  922.            $ cd ddgs
  923.            $ ls
  924.            174192 dvb
  925.            100076 rgdbsfbm.wrd
  926.            18400 zgwwvb.pcs
  927.            $ cd ..
  928.            $ cd hzqlb
  929.            $ ls
  930.            165950 plw.frm
  931.            $ cd ..
  932.            $ cd lmtfhtd
  933.            $ ls
  934.            dir clvljpb
  935.            137957 dnbmm.vjs
  936.            159982 lgll.lnp
  937.            25796 plw.frm
  938.            201565 znj.ljv
  939.            $ cd clvljpb
  940.            $ ls
  941.            248187 fdvbtnvh.gsc
  942.            $ cd ..
  943.            $ cd ..
  944.            $ cd sjq
  945.            $ ls
  946.            dir dnbmm
  947.            167394 dzmj
  948.            143508 plw.frm
  949.            dir sllcrmp
  950.            dir ttltfz
  951.            140530 vdsvw.jhv
  952.            $ cd dnbmm
  953.            $ ls
  954.            224433 qchfgv
  955.            $ cd ..
  956.            $ cd sllcrmp
  957.            $ ls
  958.            47580 hfvh.ncs
  959.            dir hgtm
  960.            237683 nzjzd.zcw
  961.            $ cd hgtm
  962.            $ ls
  963.            194211 nsddmsvq
  964.            8615 zgwwvb.pcs
  965.            $ cd ..
  966.            $ cd ..
  967.            $ cd ttltfz
  968.            $ ls
  969.            249866 gbqptvn.pvm
  970.            205314 jjb.qbl
  971.            $ cd ..
  972.            $ cd ..
  973.            $ cd tdjh
  974.            $ ls
  975.            266400 clvljpb.tmv
  976.            130599 qdnmmh.trp
  977.            $ cd ..
  978.            $ cd ..
  979.            $ cd vpp
  980.            $ ls
  981.            214035 nfngbl.mcn
  982.            $ cd ..
  983.            $ cd ..
  984.            $ cd ttjbnj
  985.            $ ls
  986.            dir crlhpd
  987.            47864 dnbmm
  988.            dir ttltfz
  989.            $ cd crlhpd
  990.            $ ls
  991.            dir vmgdpf
  992.            $ cd vmgdpf
  993.            $ ls
  994.            169762 plw.frm
  995.            $ cd ..
  996.            $ cd ..
  997.            $ cd ttltfz
  998.            $ ls
  999.            dir gdf
  1000.            dir hdh
  1001.            dir jbfwr
  1002.            $ cd gdf
  1003.            $ ls
  1004.            68861 plw.frm
  1005.            $ cd ..
  1006.            $ cd hdh
  1007.            $ ls
  1008.            166403 dnbmm
  1009.            $ cd ..
  1010.            $ cd jbfwr
  1011.            $ ls
  1012.            100770 pcg.wnr
  1013.            178623 wnswp
  1014.            41069 zmrrmdv.bzr
  1015.            $ cd ..
  1016.            $ cd ..
  1017.            $ cd ..
  1018.            $ cd ttltfz
  1019.            $ ls
  1020.            234321 dnbmm
  1021.            131214 dtpprnwf.hfr
  1022.            $ cd ..
  1023.            $ cd vjj
  1024.            $ ls
  1025.            112879 pgzrb
  1026.            $ cd ..
  1027.            $ cd zhq
  1028.            $ ls
  1029.            147979 clvljpb
  1030.            dir dvm
  1031.            136916 pcg.wnr
  1032.            205323 rwnrfrph
  1033.            $ cd dvm
  1034.            $ ls
  1035.            dir cpsqlvbl
  1036.            dir ffw
  1037.            dir hzqlb
  1038.            95516 pcg.wnr
  1039.            60101 tcswqq.zjf
  1040.            $ cd cpsqlvbl
  1041.            $ ls
  1042.            dir hzqlb
  1043.            $ cd hzqlb
  1044.            $ ls
  1045.            169253 nscj
  1046.            $ cd ..
  1047.            $ cd ..
  1048.            $ cd ffw
  1049.            $ ls
  1050.            161525 bpg.rsw
  1051.            50629 dnbmm.qff
  1052.            126458 pcg.wnr
  1053.            18268 trvcmp
  1054.            dir vwnlb
  1055.            171750 zgwwvb.pcs
  1056.            dir zhq
  1057.            $ cd vwnlb
  1058.            $ ls
  1059.            218994 ccjz.qrm
  1060.            268399 srwv
  1061.            $ cd ..
  1062.            $ cd zhq
  1063.            $ ls
  1064.            150894 ztcw.dlc
  1065.            $ cd ..
  1066.            $ cd ..
  1067.            $ cd hzqlb
  1068.            $ ls
  1069.            45224 fnb.vgg
  1070.            53728 nfngbl.mcn
  1071.            230460 zhq.bsw
  1072.            $ cd ..
  1073.            $ cd ..
  1074.            $ cd ..
  1075.            $ cd zqgcbnrt
  1076.            $ ls
  1077.            91447 bdjbn
  1078.            $ cd ..
  1079.            $ cd ..
  1080.            $ cd wbvcf
  1081.            $ ls
  1082.            dir dzh
  1083.            $ cd dzh
  1084.            $ ls
  1085.            250311 qrvn.bft
  1086.            $ cd ..
  1087.            $ cd ..
  1088.            $ cd wsqvpp
  1089.            $ ls
  1090.            96530 jwhtlzcm.gmq
  1091.            $ cd ..
  1092.            $ cd ..
  1093.            $ cd zcvfqn
  1094.            $ ls
  1095.            264037 hzqlb.jfp
  1096.            dir nlnl
  1097.            96691 qchfgv
  1098.            126674 zhq.ndc
  1099.            $ cd nlnl
  1100.            $ ls
  1101.            248407 nfngbl.mcn
  1102.            188078 pzwmrfht.dfs
  1103.            268160 qchfgv
  1104.            $ cd ..
  1105.            $ cd ..
  1106.            $ cd zhq
  1107.            $ ls
  1108.            91941 bgc.grv
  1109.            $ cd ..
  1110.            $ cd zpb
  1111.            $ ls
  1112.            dir dnbmm
  1113.            dir fsw
  1114.            $ cd dnbmm
  1115.            $ ls
  1116.            260358 lcpg
  1117.            dir lfm
  1118.            $ cd lfm
  1119.            $ ls
  1120.            227028 qchfgv
  1121.            $ cd ..
  1122.            $ cd ..
  1123.            $ cd fsw
  1124.            $ ls
  1125.            dir fffpsrvp
  1126.            153630 pcg.wnr
  1127.            dir qtwvgmtl
  1128.            2971 qzl.pcn
  1129.            17259 zrpl.hcc
  1130.            $ cd fffpsrvp
  1131.            $ ls
  1132.            dir gflwnfc
  1133.            176446 lwz.pgq
  1134.            $ cd gflwnfc
  1135.            $ ls
  1136.            132820 cjznqwf.hhq
  1137.            224464 nfngbl.mcn
  1138.            104803 qchfgv
  1139.            $ cd ..
  1140.            $ cd ..
  1141.            $ cd qtwvgmtl
  1142.            $ ls
  1143.            dir rcssfd
  1144.            $ cd rcssfd
  1145.            $ ls
  1146.            56266 htr.chf
  1147.            128262 qcfsth.mlt
  1148.            120527 sqrb""";
  1149. }
  1150.  
Tags: adventofcode
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement