diff options
| author | Orfeas Chatzipanagiotis <csd4366@csd.uoc.gr> | 2022-12-08 05:45:14 +0200 |
|---|---|---|
| committer | Orfeas Chatzipanagiotis <csd4366@csd.uoc.gr> | 2022-12-09 11:57:39 +0200 |
| commit | 52123945a7bf2d627f3000add96d30f46c6f48b8 (patch) | |
| tree | bdf168e85a030b96fd610d11293039f4f1907bc3 | |
| parent | Day 2 (diff) | |
| download | aoc22-52123945a7bf2d627f3000add96d30f46c6f48b8.tar.gz aoc22-52123945a7bf2d627f3000add96d30f46c6f48b8.zip | |
Day 3,4
| -rw-r--r-- | day2/solution.nim | 8 | ||||
| -rw-r--r-- | day3/example.txt | 6 | ||||
| -rw-r--r-- | day3/input.txt | 300 | ||||
| -rw-r--r-- | day3/solution.nim | 47 | ||||
| -rw-r--r-- | day4/example.txt | 6 | ||||
| -rw-r--r-- | day4/input.txt | 1000 | ||||
| -rw-r--r-- | day4/solution.nim | 56 | ||||
| -rwxr-xr-x | init.sh | 15 |
8 files changed, 1433 insertions, 5 deletions
diff --git a/day2/solution.nim b/day2/solution.nim index 8bbd95b..8a794d3 100644 --- a/day2/solution.nim +++ b/day2/solution.nim | |||
| @@ -1,12 +1,10 @@ | |||
| 1 | import std/strutils | 1 | import std/strutils |
| 2 | import std/sequtils | 2 | import std/sequtils |
| 3 | import std/tables | ||
| 4 | 3 | ||
| 5 | let content = readFile("./input.txt").split("\n") | 4 | let content = readFile("./input.txt").strip().split("\n") |
| 6 | let rounds = map( | 5 | let rounds = map( |
| 7 | # Filter out empty lines | 6 | content, |
| 8 | filter(content, proc(line: string): bool = not line.isEmptyOrWhitespace()), | 7 | # Split line into pair of characters |
| 9 | # Split line into pair of strings | ||
| 10 | proc(round: string): tuple[other: char, self: char] = | 8 | proc(round: string): tuple[other: char, self: char] = |
| 11 | var splitted = round.split(" ") | 9 | var splitted = round.split(" ") |
| 12 | (splitted[0][0], splitted[1][0])) | 10 | (splitted[0][0], splitted[1][0])) |
diff --git a/day3/example.txt b/day3/example.txt new file mode 100644 index 0000000..f17e726 --- /dev/null +++ b/day3/example.txt | |||
| @@ -0,0 +1,6 @@ | |||
| 1 | vJrwpWtwJgWrhcsFMMfFFhFp | ||
| 2 | jqHRNqRjqzjGDLGLrsFMfFZSrLrFZsSL | ||
| 3 | PmmdzqPrVvPwwTWBwg | ||
| 4 | wMqvLMZHhHMvwLHjbvcjnnSBnvTQFn | ||
| 5 | ttgJtRGJQctTZtZT | ||
| 6 | CrZsJsPPZsGzwwsLwLmpwMDw | ||
diff --git a/day3/input.txt b/day3/input.txt new file mode 100644 index 0000000..a30889c --- /dev/null +++ b/day3/input.txt | |||
| @@ -0,0 +1,300 @@ | |||
| 1 | hqBqJsqHhHvhHHqlBvlfpHQQwLVzVwtVzjzttjQVSjMjwL | ||
| 2 | gRTRnCRsFNGbTzLjwcSTMmSz | ||
| 3 | dGgsRWPGdWgZJqBBqhfpPq | ||
| 4 | HNCNJHCWJRRLqNJWlfrrrwsmlwGmmf | ||
| 5 | dddvLdLjdDvjvswlmGwlZQtjrt | ||
| 6 | dvcpbLVcvNJJHNPHSp | ||
| 7 | QDprSpLQRLQrQDmQcQFZjbbhZwdRsRFbbBss | ||
| 8 | gWGGPgNvJlgJzDlNGHCGPNZZgFBbsjbFFBwZwfhdZbZB | ||
| 9 | lHTlGMHlGCPNvClzGzJHvGcrMcVtLqMLcrrQVcVDrqrm | ||
| 10 | SrBpJFfldlFNslFJBZwsmwgVGGsCCVmZZD | ||
| 11 | jLtjvzLQMtWjbbQvDZZwGRJGgwggGZgv | ||
| 12 | MzqqjznQPqnnjznnctnFlSddPfHflhfBJFNdHd | ||
| 13 | mPNNGVCRngnSbgNw | ||
| 14 | WqsqlTssgvqvZWZzhsTzWhScdHtfJJnfbtSJwfczdtSS | ||
| 15 | sqTvhpqQvWZQLmDpDGMDGrgL | ||
| 16 | DQRcLQVLbbcbrFPcRtTBBBJnTZrrnmZTrMgJ | ||
| 17 | slGjjjdlhMfvdMQTvg | ||
| 18 | jlzNhWHhhWjHlwwwGLDSDtPQVtRzRbSzpp | ||
| 19 | DzDgfvzfDczfHCHSlgHLCmWG | ||
| 20 | PrpNPJtpPMBssmmVdmSVVr | ||
| 21 | PSRMwPnMpBNtNBTnnZwDqzQFfwhjZZqfhh | ||
| 22 | fzfBwhBJFbCwbwwg | ||
| 23 | strtgtrPgmPgFRsMdRnZRMFn | ||
| 24 | mrmLPDvGmmtSLDgmSqvHchhcHQzcQQJHBfBh | ||
| 25 | NsgwPPDgsPHqsTqqmLbLrDRhmrRVrbVW | ||
| 26 | lFpGFtfFlvSFplGFzptSGSSlhZbhjhfrmWbhLhmLbCZVZjWr | ||
| 27 | ccplJQSGcSSpVFvNqqsqPNqPQPTwqd | ||
| 28 | HFhPNNZGqSZrCDBVZBCB | ||
| 29 | RJTtwczTzCRVQrRHpR | ||
| 30 | mfgblfltwgwwmlJgcHNnGhSbFNnFsFjFqG | ||
| 31 | tSRqNRHpHnMSTqpcmrWWfqfmrCQCrW | ||
| 32 | lhGDtbgVVgDsDbhfldfwrzrfcdzwcr | ||
| 33 | vtDDhsgFBTNZFBHS | ||
| 34 | LcNpLLBNgdmHGmsBCrRBQDDwnwRj | ||
| 35 | hSWfZVhfPJJhfVWbhzbnQqQnRRRqPvCCrjvjwj | ||
| 36 | ztJSSJhzzSTJrZSbzzJTfzbZmLmggdmNMFNpmtmMGFFGNpmt | ||
| 37 | TRdFfLbTnLvZVlZvznQV | ||
| 38 | pgJGprJNhghhNjjPgPNrhNqqlVVlQVVQqQjfzBfQvZzB | ||
| 39 | rmGmSwJPwJprrNDbsfMRsdTDcDWHfM | ||
| 40 | QMpZZTtwMBttJMMbVqPpqLqbVlbqqN | ||
| 41 | rjCFGrdGRwdDHSnqflPVLqqVNllrfl | ||
| 42 | DHGDRvhvwTZhJWBQ | ||
| 43 | LcQCCpLQVhrdcFQCJrmmmwDwvDtJJnnw | ||
| 44 | TsZqqTzMRqZjfsjTTDjsNJnmnStRSHnnSJmnJSNH | ||
| 45 | sMMZZbDjZFdbVCFphV | ||
| 46 | FCcdFFGBsdDrbMNSmSdmQR | ||
| 47 | tVttHVLhvVgfTTtffNSMQRMZSRmMQNmHSb | ||
| 48 | gngvvwJtVVTvVvvvfwvJThhCzGcnsCjmCDmscPcGCsGsmz | ||
| 49 | fsnzRNZswZszPRZSLflPpDhlhvgWHmjWvJjh | ||
| 50 | bVcCqjbdjbcMdBrddrQphvHHmHWlggpWpppqJJ | ||
| 51 | FBTdFQGrTjLNsNtL | ||
| 52 | MSWWgMdgdbWbbfdgsPmddgCmSLZvSFvLQvnLrFNZvZFLlLLl | ||
| 53 | hjpJjGthjRNRptwJJqVBllnvrrlTTQFZqnTZnn | ||
| 54 | tjDGHwhHHjwjjJGpwjwjjJpwsdgffmbgMsmbDNcMcdmCPdsm | ||
| 55 | MlDrrgnTDLlCCmCRFgRSCR | ||
| 56 | HHhbbNQMccQFSNBmmpJNSJ | ||
| 57 | MwbMbshsswVbHQsbcVMcrtDllTlLqfTGVzLGrTlT | ||
| 58 | gSFzqQTpmVpQVpLFLrzJJRthlsQBlPsZsBhZst | ||
| 59 | rwrNDdbHdBhRhZbsjB | ||
| 60 | vvvMHwHcwGCwwNfMVSrqffWpSfSFzLmT | ||
| 61 | RNgMgRCCgCfPNfvNgVQmhPVWWjWjLLdLBj | ||
| 62 | JhJqqqwGDchsBVbdjldmBLmG | ||
| 63 | schZzDwTJzFTsctHFMtfftgMttpM | ||
| 64 | GHHWqWFWfWHqbRWsFZFmqZbhNjNDNppNjrjDcQdbpddhjr | ||
| 65 | wCLCVPfwgVSnPNrQhnDcjcNpDD | ||
| 66 | TPgLlggJLVwPVVPPwgTwvtSCFmzGGqzGZsGRqWBGfFRFJFRB | ||
| 67 | LfFLmGTPHBfpHmzBLdZfBfZTbWWttWSDJtWVDJDtSWJzVCCV | ||
| 68 | RssRRRhrRwQqMQQwnPngQrwvVSjttjJSjSVtWWCWjbVb | ||
| 69 | hQPnnRnQgNcQqqQQcsZTNTLpdZZfpZFHNpBp | ||
| 70 | VTCVVnwfFTvFmTCvWwJHdlhHWBJhJBRWNHgh | ||
| 71 | ZbSMZbctGtScQSZsSpZpPpplhBhtdJDRDJjhdtlRJRjNRj | ||
| 72 | rLsbBQSMBGspPGcMPQvnqmwzwmCVLmqVmwTF | ||
| 73 | GVrrQVHHHQGTllQjPHGrlCQpZZpJFWZFzzjBssDJghzhFZ | ||
| 74 | NSMmWmtqMWqSNbcctdLcdghpgpppssZgbgzpFzJJFs | ||
| 75 | cfLqLwMRdtNLMlQrvflWTQPffQ | ||
| 76 | FjtGflGsbNqjsmjGGGbmqQQQBQBTjdpTpJTWvJBddj | ||
| 77 | CPrVRMnvvLSRHLnBpwdWTRBQwQzBzR | ||
| 78 | SnZMZPcHMlqchsvGGb | ||
| 79 | nnJnswzPCtmZDCpmhphD | ||
| 80 | rSVVLQQQGQjwpdmdNmpS | ||
| 81 | VvBcQvGcQgGLBgWrwznfJsncltJsJnssPM | ||
| 82 | dhbwLStzSGmmmzJJvFgJNvnrgvhv | ||
| 83 | VTsTsRscRsVBMRVTTsjZVPCnDNvfrPfDvNCfBrPNDJ | ||
| 84 | scHHQTpJZjHwzLSHHtqHSt | ||
| 85 | MHmFsBDmGpGTBfmCfWCffhzgvf | ||
| 86 | wcjwnRLPZRVbtCjtNttGCh | ||
| 87 | ZLGVJRrnPPPwQwPppqDHFpBFTpqFDr | ||
| 88 | GzMgVfGRdRVngDjhqcjctrtrzzzs | ||
| 89 | QbQSHwHSLbWwJJFwJPLPSWTQjrhqtjflThccsclCcscCCmmj | ||
| 90 | JFbNSbLvHHLQFLvwQJFWSBVgMNGdBBnBMVfddpGngB | ||
| 91 | sZHNJwMsvHswwvMWqBzhChWPMBzd | ||
| 92 | bHQQQRDHRcRcDljttBldlPBdggBCqB | ||
| 93 | QjnDbDjjjncRjbQnfZpvssZNHnppFNpvvp | ||
| 94 | NdmfPNMHMdNMHcffHBCwwsvsRRllvwlcqjwscw | ||
| 95 | VLhVGLpLShgvrjwFhjqfls | ||
| 96 | pppnnQtVpGZVWtzGgVzgSSfnCCDmdPBMDbmmDMmdNMBmWNmm | ||
| 97 | rrfgCrrMllfnBhBrdCFfWLFmmVFVWQvWwtwV | ||
| 98 | TmSGSqNzvwwTFVvj | ||
| 99 | NSGSmNbDzpmSpbHmSJqqlMgdMndcgdccdpgllRRh | ||
| 100 | bbPtLnLcLJzTjcJbbTcttLcSgwmvWfVvfVvBgfmWVJMJMJMW | ||
| 101 | ZsDNNGDRsrHzpNRwMlgRlgmMWvffWM | ||
| 102 | FGzQpZGGLFjnSFbF | ||
| 103 | DQZVDdWWNBtgWnJCnL | ||
| 104 | SSHSmbHRFqGrmqJrbbGzjmzCwrvgvwnBwnCvprwvpwwPvv | ||
| 105 | qFFFSmsRRzzFjcFsSsjmzJzflhlZTTThdhVflZlVDDhMcN | ||
| 106 | cdvrFddqDtDvqgCDtFtrvvvFSmShPShJVJmMJSJbVBgTlmbM | ||
| 107 | GzjpHzGHHfQNfJSlPQbJBSTJBM | ||
| 108 | HWpspsWjNsGRHfpwNszzLfGqnCnZtdvvcZvwqFCcZqMZCv | ||
| 109 | rhHhDhhDrRNwDRhNRLRqNPHjHSpVpVlljSSMnlHnjS | ||
| 110 | sVVBsFBJBtBSPSjtjPPZZS | ||
| 111 | JmddVTzsffcGNwzCqNqR | ||
| 112 | nQfqFtZWFZnFJWfpGqhDsGLLPLVbrPhr | ||
| 113 | CzjwMTgBgTNSGLVVDPbjbS | ||
| 114 | wMCmgNNdgvzGdRQcFGFdfJ | ||
| 115 | CbqCDnwFpDpCVfBPmPffPfRfpB | ||
| 116 | svcsjlGJGnlnvjvzgQQgGzsZPhBRcRPhWfBZBhPhWRRhPN | ||
| 117 | sJngnjSGGTGzgJGrrbCqLHrCLwSFqV | ||
| 118 | hnRnJrwMHnQRRRwMhRrnJRBLZtBPdPSdtZZjjstsLHBP | ||
| 119 | pBBzzcbTbzCcFzTvlSCZLCtSvvttdZ | ||
| 120 | FWmNzBFNDnRqNRDM | ||
| 121 | lvzlSPRDSpDJmNwNGgFpfsFN | ||
| 122 | WBHrtrLBbhWHtdrFwFFsjzwfFjsdsF | ||
| 123 | HWnrHnTWhWTCTzTBnRZqDDDCqZcclRvSJR | ||
| 124 | qcdVbpcMFQcdMGcMFjjpbCnCGmCnJHDHDGJChzCJCJ | ||
| 125 | wWwlSfBRgRNBDPJnCgCrgzms | ||
| 126 | tBTfTRwlwRLNwTRmWtNwQFZtqcjcdcqpbdQMqMdd | ||
| 127 | jJRzwDdwFdJddcjjFCFvQLvNlBhSBhCC | ||
| 128 | gMMpbHpmnHpWfnlCSBQCPmPllQSs | ||
| 129 | nHWHVfTGdTSjZzDT | ||
| 130 | sCVTsBPltgDSbLvRMMDT | ||
| 131 | WNrjNmWZwmZwfVLvLRbRNvMp | ||
| 132 | mrHGrmnjqVzjGqdmCltlhFFllgsHBPCg | ||
| 133 | wbglgTFRblnMRltJBNrDDWQbtdbN | ||
| 134 | dqCpcjPLGfHZQBJNGGvQDZ | ||
| 135 | SPssjVSqPCLpScfCgFRVmTlRwndlRwTR | ||
| 136 | hWMWMhTTDgWMzGMszQShGWJPCQmPVCNPffPfVJftqNQC | ||
| 137 | nbnHHwLrnswwPVCPZV | ||
| 138 | nsRvFHLsvplvrcsSWDDDddjjDlMTjT | ||
| 139 | HRCnhWZhCddgwRcwhdWZHHQLJzSLsSzjJwSjztsmtzsmLF | ||
| 140 | VlVVNNVqTlMVbTVVMqvqvrDTjQfFtjstJmzftfzsSbtStJQb | ||
| 141 | pQvvPpBqNBccPWWhcWWc | ||
| 142 | glJTndVWCTDDVFvnVndVlCvwmBmqBBwQmwPwmMPggGsPGm | ||
| 143 | NhcSrhNZHhZzRtHcNRrSMSMSFBMGmsQQGLMPPF | ||
| 144 | hcpRzbcHjRhRbZRzZRztzRpJVdCdnfCnlFvdDTnJCVDjWd | ||
| 145 | dqWvjjBdWWqMjdvvMJjWWjMGgcfchhzrhwbrwShwgzSqNb | ||
| 146 | mmmmsVTlVlsLQmnpsNcfgfwNLgczhcGhzw | ||
| 147 | RslpsnGGGlWdCZFMMRWR | ||
| 148 | pfSpZSrdSMVDVVLMMDDZpdgRWMPGqqPGqmqqGGhGHNRN | ||
| 149 | wwQBwtjvvJlvsnbTbvBRHgPmlqhlqWWHqZZgNm | ||
| 150 | JnQwJvjTtzTZwJnbzzfCrfLCfdfdddfD | ||
| 151 | PZcnljZFTVmQdlQh | ||
| 152 | JCLLqBBCSNCCqzJNzStBpStBmsdhVTdmVWsWmdhfLhWVdfrR | ||
| 153 | BpMzzqSzppMMqpJqqgzPFcjZjnTjgcjbPjPDPZ | ||
| 154 | HLHWmqBHHqWbMHFtbgWcdhspPcPchndPpn | ||
| 155 | ZRVSQZRfVZGRgnfsdhLgLndL | ||
| 156 | jzJRwJRSJJvSlZQGRVwlSGZDMqmmCCCmtNbCmtCMzFNLbF | ||
| 157 | fDhlBhhZmQRRfHwLdjHFFWQQjQ | ||
| 158 | ZMTssVVzvbCqJddsLwwH | ||
| 159 | TzgTbgGGzztMbbvzvVbGvSPBrlShRrfnNrnBDlNcRDZRZB | ||
| 160 | bjfqGfvFfcHvRwGFRHjbgQtddlQljWpWnQgdWWll | ||
| 161 | TSPVVSVwSzSDTDlntDndnlWddt | ||
| 162 | hTrrNCBCVrCrrVshThHHbZvFGscwbfFGRJcZ | ||
| 163 | jNhMjcgvMNgWggvttcFtchvPFFzdPPrQrrGGQQszRPQrRG | ||
| 164 | wSCqCmmppbTwPnGHrQdrGCCD | ||
| 165 | LlqwGmGScLcVthVt | ||
| 166 | dGGrWWDqmCnwCCQMQrMbFHbMHsPFgPVZbgFPgg | ||
| 167 | tLRTBwfvTBJcZFNFZRHSHPVN | ||
| 168 | zjJLTvjcwDzqqhGD | ||
| 169 | DzrWszFFrtBBhnhNCClHlnHbSbmlSn | ||
| 170 | ZLwLcVVZcLVpvRwLgMLpLJgPmmQSNSTNbtTvQmCHQCClCHCt | ||
| 171 | cfgZJwwVLJZPPVpRwzhzrrfGGBrGtDrBsf | ||
| 172 | BTsdCQsQnwwdcCqqdCnsFvGFpFBvGzrLLmmzpvfG | ||
| 173 | pjZjgPVlJVMVtgJSWLPvfFFFbNNmNbvbmL | ||
| 174 | ggVplgJtHSSggdCHsscChhdnnR | ||
| 175 | JddZcSlvvGFJNWVWFgQgVtFWhg | ||
| 176 | nDqsHqCszwjCCPMnfhfBhtdWggfg | ||
| 177 | bqppHqqHHbPLjLCppbwDdRNvdmcTmlNZGGbTTcNv | ||
| 178 | lcZDSvztcHHcMSZVHVvMZBqBNNFNhBNTTmssBqBcFB | ||
| 179 | bbGJQdQPpGfQJQdJfLFhmznhzLLNTFhNhf | ||
| 180 | JGpWpPJddbPpPwpjbtZSzltDgWDSgvtrVv | ||
| 181 | lJcNlNjPcmtFzHtHBJFg | ||
| 182 | VPZdwGGWVrsdPWhWwhzzCzzFppDFMBtttFCr | ||
| 183 | wshsLVfWTnGswdhwcmRjRmScqTcjlPNq | ||
| 184 | BsBshRZQQsVdsZQZSdsPDwJDHNNHBztNNFMGGwMF | ||
| 185 | nSTpLjcvHppzwwNt | ||
| 186 | jcqncjjvfmgrCfvqrnZbmdmSsdbVWlsmhRdW | ||
| 187 | FjjqRZjZFZWFqPvNvvPQpmbPDCmt | ||
| 188 | GSnHSnrScncHhrtncGshVbmTmbpVvppCmpCTmTCmCC | ||
| 189 | rHfnddwdfctlzFFgwqlj | ||
| 190 | wBwlBmmhwRVThVBmFHnvHMnfsmFfHq | ||
| 191 | jzwGSGJNZCCssHfsCPfv | ||
| 192 | GJbzbZdbwJdtdQphRVWQ | ||
| 193 | ztFZccVHFWHHLSDBpSBPhhZw | ||
| 194 | fmjsCmqnNTJnvbTvLRPDlCpBSPBpRShl | ||
| 195 | JqsGTSNJGqvqvNvttGQQGdFrQctrrF | ||
| 196 | mNZqjTFrZqrTNTTGSSSbrhrhRFRHcnLCzcCdHcLBdccHLzRC | ||
| 197 | JDDfJswJDWsvgVgwpWnRBlBzGCnlCLBlcCDl | ||
| 198 | vVGpfQWJpsPQMVgvppVwgWPJrqSZTrZqhTQTrhjbjqSSjZqt | ||
| 199 | fMSDzDHzpDDVsStdDgwwFZFrrMPCNngCZP | ||
| 200 | WmLnbWmvvWTTLWWQWRGQvLvrPFZJcgJFCZNrCgGCFCPNPF | ||
| 201 | QLhlqhljWvRQbbqlqnfStnHdBqVVfzpq | ||
| 202 | qWZtSQTSvJJvBfJVBBVFNDNHbbdRVPdpNFRF | ||
| 203 | fGcwwmCgsLhgwLchbpHdrrrphdPRPh | ||
| 204 | gMjllmcjwsLMgcwlMnSWzSqjSZJqZqZfjQWv | ||
| 205 | cdRHPjRFRdFVHGcFfFTHQTHVLSQBsbsqSCLqllBJqqbSqLJC | ||
| 206 | WwWppWgtNrnzzWDmrrmNvWJClJSSbqLJJCGbsCgJbLLg | ||
| 207 | MnvWpmwvWnvtGPjVRcHRRHMj | ||
| 208 | dLMDhdHGrcLTvvvstB | ||
| 209 | nPqgGGNPqRgRSjgmlWjbbTTPPBvpvpTcswwsTF | ||
| 210 | NRGmgjRnWgnZJqllmSqjnqSDhQzVrdQHDfDrDJQDMHDJzM | ||
| 211 | RgmcPmGNQwwNmSRwPPgfmrBlCDlGbvFFvtrCsvlrBB | ||
| 212 | nfdVnjHdMWnTqflFtbjrllrlsCDl | ||
| 213 | TZJVMhnfMnVMHnpRRNRzgJRzSzgwPR | ||
| 214 | nTbsblzlnGllmsNnbDwbcWQWwWBFJBQcWQvPWFJM | ||
| 215 | HRZRdSRdCdLdRftrHHZfSQBMWJMgMzQPFWMJCFWgvQ | ||
| 216 | HVzrLrrjRjLGnlTnlDlsjj | ||
| 217 | RQdTdZhWqlZhTdWTqblhNmTMVnnrQsnnpvgMVMHMgHMrgP | ||
| 218 | fjSSfjcCzGNBjCjsnpMVpnpzvpzsHp | ||
| 219 | GGwLGSccwjwLwBcGLGSqZWmmdLZLWThmRNZmWR | ||
| 220 | ncmBrmfdfcVcfGnQdVWRBRvgqNvDvWqzLRqg | ||
| 221 | PlpPbSbLFPLpFstsbqRqZMqWZqMWSDRzvq | ||
| 222 | sjtjHCwJwlHfdfjccmmLLQ | ||
| 223 | tGMtLHQGWzLHFVQtVfQtMWtbgrZNbdfSbccggrcTjTrfbm | ||
| 224 | swRChnwqhBCCCmSjcNSdcd | ||
| 225 | vnlnqDRlsRnJJqswJvGMFVMMdWtpVJFMQQFL | ||
| 226 | ffcHLzGmfvqqfWfF | ||
| 227 | rJrrRSPCPMCrPRQMNNWJQjJCnqFVVVTStqVnSBdqppBVtpqd | ||
| 228 | jNQQPjQMCRQwwQbRQbjMgwbNhwWZHHmzmlchlHHHDcLmWzhD | ||
| 229 | JzvrRHHJvCRZFPFnPgsQVVQNzQTQDttVsB | ||
| 230 | GSMjpqdbGNppBtDhPN | ||
| 231 | MbmqMwGbZPmPHJmv | ||
| 232 | ggVSVWzCNbbNCbRM | ||
| 233 | DfVhVsVQcQDmpmQTTQLjPjMjbDGNlbRMlNGG | ||
| 234 | sftTFJJccnphcfncTsfBvwZvrzgzZzZvBrVnzq | ||
| 235 | qqlClBNSCNSRQMvdrwFvnBrr | ||
| 236 | GDfhDtszhhsThpTDzsfpprMrFvQvrnnfvQrwHFbfFH | ||
| 237 | VtggWhpsmGVTGJWMjWjNjPWjLL | ||
| 238 | NSnShnjsswSsRPNsrnwcwMHfFwGqbvqCbFfg | ||
| 239 | LDJtzzmgVVlvqGbzvFfzff | ||
| 240 | mlJmQQpmJpZpBJJdjBNhrnnRdTTgNN | ||
| 241 | RtRRvbhDFPHHlhtPhRvPRtqjmzqzzwLjHQHLLLQVmVjq | ||
| 242 | WNNBBZfgfWnqVQwNqzmQcm | ||
| 243 | MZGfzSrTTnWrrWsTWnfSGbGllPCbGlJRvlPllCtt | ||
| 244 | phgcNfqgfpZsjjpdsS | ||
| 245 | brHHnWPbDPDbTPlDJJvJJPrMVVzRSdFzwdZZzFnsdzzVdVZs | ||
| 246 | SbStvJMDQgNmmtgg | ||
| 247 | lzDMDhfFRlfMFTfMGPMbFTlMpBHrmpjjCFjmBmrqBjtCmjjq | ||
| 248 | VvVswLLHZnJJwdndNsSSNBpCpjqjmNgrmCNtmmqm | ||
| 249 | nHcZWcSVsScTDlPPlTPb | ||
| 250 | DFMQSlMDpSpFDtDFccHvmqzvbHZjJmvzmmQH | ||
| 251 | CSgffrPssdgqRbqzzRqZ | ||
| 252 | dsdsfGsrBPsTVcMctMVNNhtStW | ||
| 253 | MDWRDWpgDvWpNptvNMnJCHJHMwHCndJfZn | ||
| 254 | blcrqTFmmcbhLTTTmlBZbjBJdBfBnCbQBdfn | ||
| 255 | TzlnhcnzTmhLRvSDsRzDPzWR | ||
| 256 | nwmmPnnPDjclhhjfFzzzwqbFFNHwVqVq | ||
| 257 | vSQrbpWCvMWQQWQMLgFJVHqzBzJVNqzBFL | ||
| 258 | CvCvQtWWQmcbtntPcb | ||
| 259 | qzvtzCCtLsLLzmQCHqpSsHSmfrnNrTrNWWMNGnWZTMZGBvWn | ||
| 260 | PglVFJwPhbcghVTBpBnWWhWnTMhB | ||
| 261 | FgjcJccVpwDcwFgVDsqzddqLqSDSCQQL | ||
| 262 | PLHsSVGGPvSLTffjMJWJJBjfBL | ||
| 263 | gNhwgTqDcqwpDqNhFpDFhFWfnndjcMJjMWzzBtntJBnW | ||
| 264 | DFhhQRRwbCbwRQChppmTHCVGTlslrsvrrSVZ | ||
| 265 | hHnRfSMmsSVrFvQqrmDPgr | ||
| 266 | jjcBzjZLpWccJLczBjZjWGwCnNzDvrgPCgQvFggvqrQFnr | ||
| 267 | jtZGpLwjWBpBWcfMTttfbHRnHTbT | ||
| 268 | swSHffFTVrJlHFSWrTpMZMPhMNBqBhTvhhqZ | ||
| 269 | bQbLQGGjQLdRCcQjGZBzpzBZqMBBBVdBqh | ||
| 270 | RjQDQGmgmVVbVcjjmjgcnWtJfrwsfrtHlwswnfHSFw | ||
| 271 | bVHbbMFDcbDbcmbbHVRbMRFgzSmdzSSTBtTjBdQTzlSldQjT | ||
| 272 | nqpqCMwJffqQSzTBQlqd | ||
| 273 | wvJhnnfrfsJrCNffvspRrPPFMbPMRRPPMZgZHR | ||
| 274 | FnJZnssHvMdJWJpW | ||
| 275 | mlDlllGrSGmttwlGvZgrzZNWgggzTzdT | ||
| 276 | bCltZCthtRcbcFbjFL | ||
| 277 | JGmHrJwGzzpllRZdzZLRcW | ||
| 278 | htbPSbVtFbbgjhffgPSfTVSDcHDDDLWscRdsZjdZcRssWc | ||
| 279 | vhfFbFvVHbtTVgFPhmJBCvBNrqBBrGCqQB | ||
| 280 | BcNQcvcBchSQNccLLvhTqbJZTrHrrrzzqTZMZMFZ | ||
| 281 | tpHDsnDRslllCCHtwnpsfjRgrJrVMfMmMrFrzVJFzrVZbZrr | ||
| 282 | tnDpjCwPLNSPdhPH | ||
| 283 | qnjvvBwBhSSFPgDQLVVDqgLr | ||
| 284 | WbszTbHTbsbHJWHLLMVZmJPQDrvmZL | ||
| 285 | ctlRbtCWWtvlSfjljjhBnBNB | ||
| 286 | TsnvssDDQlRbzMzjDMqHwq | ||
| 287 | tSGjZCfFZtCFLtVGWGZFbcqwHbhWdbzbwHbdwbdw | ||
| 288 | ZGBFJFZVBLjStZPBBZLRvlmsPTvsgrrnrTllvs | ||
| 289 | PgQdNsQFsdNwWqQBsQrTrTLpbrnTpGngnbTG | ||
| 290 | hCzzMJVDmfzmBDMCfSfhTMGcnpnTcjGrpjbMGjbL | ||
| 291 | CVVfvCflSHNHvPdBHW | ||
| 292 | DwlMjMNjStgmthMghg | ||
| 293 | PTlpHnJJTcZvTTbHZWZTvpqdHhmLgrgdfrhLLsmshmsLts | ||
| 294 | vncqTbPqcpCnbCPvccZbDBCGzzNBwjDlVVGFjjVR | ||
| 295 | QsdGGCztZVRddPgndf | ||
| 296 | DrNNBbwNHNwlbjFbbCNjNwDWWDPPVfDMgfmVMfnMWmmP | ||
| 297 | rvJBbbBNcLCtJZQL | ||
| 298 | NfLlqLhbNPddLPqLhpgHwFFwFHHTwRHWwPFTrT | ||
| 299 | MSMSCnjBnBjCscjVDVljTvHmmWnrwTrwFTrvTWTT | ||
| 300 | JCMMBzDMJcZZCjDzSBDNJgdfdQlqlLNdhgGLhp | ||
diff --git a/day3/solution.nim b/day3/solution.nim new file mode 100644 index 0000000..6df88f2 --- /dev/null +++ b/day3/solution.nim | |||
| @@ -0,0 +1,47 @@ | |||
| 1 | import std/strutils | ||
| 2 | import std/sequtils | ||
| 3 | import std/sets | ||
| 4 | |||
| 5 | proc Points(c: char): int = | ||
| 6 | if c.isLowerAscii(): | ||
| 7 | return ord(c) - ord('a') + 1 | ||
| 8 | else: | ||
| 9 | return ord(c) - ord('A') + 27 | ||
| 10 | |||
| 11 | proc part1(content: seq[string]): int = | ||
| 12 | let ruckshacks = map( content, | ||
| 13 | proc(line: string): tuple[first: string, second: string] = | ||
| 14 | let pivot = int(line.len()/2) | ||
| 15 | (line[0 .. pivot-1], line[pivot .. ^1]) | ||
| 16 | ) | ||
| 17 | |||
| 18 | var score = 0 | ||
| 19 | for ruckshack in ruckshacks: | ||
| 20 | let | ||
| 21 | uniqFirst = toHashSet(ruckshack.first) | ||
| 22 | uniqSecond = toHashSet(ruckshack.second) | ||
| 23 | |||
| 24 | var c = toSeq(uniqFirst * uniqSecond)[0] | ||
| 25 | score += Points(c) | ||
| 26 | |||
| 27 | return score | ||
| 28 | |||
| 29 | proc part2(content: seq[string]): int = | ||
| 30 | assert(content.len() mod 3 == 0) | ||
| 31 | |||
| 32 | let ruckshacks = content | ||
| 33 | var score = 0 | ||
| 34 | for i in countup(0, ruckshacks.len()-1, 3): | ||
| 35 | let | ||
| 36 | uniqFirst = toHashSet(ruckshacks[i]) | ||
| 37 | uniqSecond = toHashSet(ruckshacks[i+1]) | ||
| 38 | uniqThird = toHashSet(ruckshacks[i+2]) | ||
| 39 | |||
| 40 | var c = toSeq(uniqFirst * uniqSecond * uniqThird)[0] | ||
| 41 | score += Points(c) | ||
| 42 | |||
| 43 | return score | ||
| 44 | |||
| 45 | let content = readFile("./input.txt").strip().split("\n") | ||
| 46 | echo part1(content) | ||
| 47 | echo part2(content) | ||
diff --git a/day4/example.txt b/day4/example.txt new file mode 100644 index 0000000..9f9e9cf --- /dev/null +++ b/day4/example.txt | |||
| @@ -0,0 +1,6 @@ | |||
| 1 | 2-4,6-8 | ||
| 2 | 2-3,4-5 | ||
| 3 | 5-7,7-9 | ||
| 4 | 2-8,3-7 | ||
| 5 | 6-6,4-6 | ||
| 6 | 2-6,4-8 | ||
diff --git a/day4/input.txt b/day4/input.txt new file mode 100644 index 0000000..5304059 --- /dev/null +++ b/day4/input.txt | |||
| @@ -0,0 +1,1000 @@ | |||
| 1 | 36-92,35-78 | ||
| 2 | 26-31,25-27 | ||
| 3 | 17-72,16-71 | ||
| 4 | 3-77,76-90 | ||
| 5 | 20-22,21-87 | ||
| 6 | 5-75,6-75 | ||
| 7 | 42-44,43-95 | ||
| 8 | 51-73,50-52 | ||
| 9 | 81-89,80-81 | ||
| 10 | 7-58,47-58 | ||
| 11 | 72-91,20-92 | ||
| 12 | 27-64,51-64 | ||
| 13 | 5-94,94-95 | ||
| 14 | 88-93,88-89 | ||
| 15 | 7-45,46-91 | ||
| 16 | 30-40,29-29 | ||
| 17 | 81-90,80-90 | ||
| 18 | 4-71,4-71 | ||
| 19 | 68-83,65-84 | ||
| 20 | 1-4,3-79 | ||
| 21 | 94-95,35-82 | ||
| 22 | 30-84,31-97 | ||
| 23 | 6-82,81-86 | ||
| 24 | 88-88,4-89 | ||
| 25 | 41-97,40-89 | ||
| 26 | 95-99,34-94 | ||
| 27 | 18-56,18-56 | ||
| 28 | 53-64,22-53 | ||
| 29 | 5-9,9-71 | ||
| 30 | 18-41,40-66 | ||
| 31 | 38-39,38-78 | ||
| 32 | 23-99,22-94 | ||
| 33 | 34-54,34-53 | ||
| 34 | 33-76,85-94 | ||
| 35 | 72-91,63-79 | ||
| 36 | 33-94,93-94 | ||
| 37 | 56-82,20-56 | ||
| 38 | 60-85,60-86 | ||
| 39 | 31-76,31-33 | ||
| 40 | 29-79,78-80 | ||
| 41 | 9-9,66-69 | ||
| 42 | 6-97,6-75 | ||
| 43 | 40-78,39-77 | ||
| 44 | 14-30,14-15 | ||
| 45 | 91-94,88-98 | ||
| 46 | 1-23,10-23 | ||
| 47 | 9-84,7-9 | ||
| 48 | 75-76,75-98 | ||
| 49 | 45-87,45-46 | ||
| 50 | 11-11,11-11 | ||
| 51 | 16-64,64-65 | ||
| 52 | 60-60,20-61 | ||
| 53 | 48-81,93-94 | ||
| 54 | 5-48,32-47 | ||
| 55 | 37-75,74-75 | ||
| 56 | 13-76,13-13 | ||
| 57 | 15-93,92-96 | ||
| 58 | 41-86,86-96 | ||
| 59 | 48-92,64-91 | ||
| 60 | 1-9,2-97 | ||
| 61 | 43-56,55-55 | ||
| 62 | 7-99,98-99 | ||
| 63 | 98-99,1-99 | ||
| 64 | 15-97,7-99 | ||
| 65 | 76-76,32-77 | ||
| 66 | 71-76,76-77 | ||
| 67 | 13-28,13-29 | ||
| 68 | 38-69,42-50 | ||
| 69 | 49-49,50-77 | ||
| 70 | 68-84,71-83 | ||
| 71 | 26-51,32-51 | ||
| 72 | 12-40,39-63 | ||
| 73 | 21-92,9-88 | ||
| 74 | 7-65,65-69 | ||
| 75 | 56-76,56-77 | ||
| 76 | 40-62,62-62 | ||
| 77 | 35-96,92-95 | ||
| 78 | 37-99,12-86 | ||
| 79 | 94-98,4-81 | ||
| 80 | 32-38,34-39 | ||
| 81 | 11-94,24-93 | ||
| 82 | 1-97,1-60 | ||
| 83 | 7-77,7-59 | ||
| 84 | 62-81,80-96 | ||
| 85 | 38-83,82-82 | ||
| 86 | 44-44,43-98 | ||
| 87 | 22-23,22-62 | ||
| 88 | 28-97,16-97 | ||
| 89 | 53-88,67-88 | ||
| 90 | 2-2,56-97 | ||
| 91 | 41-72,71-72 | ||
| 92 | 78-80,47-79 | ||
| 93 | 1-1,2-41 | ||
| 94 | 23-99,33-98 | ||
| 95 | 33-98,61-97 | ||
| 96 | 80-95,80-80 | ||
| 97 | 8-90,8-91 | ||
| 98 | 4-90,50-89 | ||
| 99 | 94-94,3-95 | ||
| 100 | 3-83,2-99 | ||
| 101 | 45-52,12-44 | ||
| 102 | 22-65,66-71 | ||
| 103 | 9-72,72-73 | ||
| 104 | 2-62,2-82 | ||
| 105 | 40-61,30-60 | ||
| 106 | 57-87,25-56 | ||
| 107 | 76-78,77-77 | ||
| 108 | 16-88,87-88 | ||
| 109 | 14-77,73-77 | ||
| 110 | 37-90,36-38 | ||
| 111 | 10-75,11-11 | ||
| 112 | 37-99,3-97 | ||
| 113 | 47-48,45-47 | ||
| 114 | 6-92,7-91 | ||
| 115 | 60-74,60-61 | ||
| 116 | 20-29,8-21 | ||
| 117 | 95-96,47-95 | ||
| 118 | 63-70,31-63 | ||
| 119 | 6-97,6-76 | ||
| 120 | 19-91,19-92 | ||
| 121 | 50-92,49-50 | ||
| 122 | 17-96,18-97 | ||
| 123 | 3-4,3-93 | ||
| 124 | 13-51,1-13 | ||
| 125 | 34-87,23-33 | ||
| 126 | 2-99,98-98 | ||
| 127 | 4-6,7-76 | ||
| 128 | 46-60,36-45 | ||
| 129 | 50-80,25-51 | ||
| 130 | 60-61,24-61 | ||
| 131 | 97-98,3-98 | ||
| 132 | 33-34,83-99 | ||
| 133 | 30-76,22-77 | ||
| 134 | 27-72,72-94 | ||
| 135 | 47-96,31-47 | ||
| 136 | 26-90,11-27 | ||
| 137 | 47-87,3-72 | ||
| 138 | 86-91,9-87 | ||
| 139 | 32-79,78-79 | ||
| 140 | 72-95,94-94 | ||
| 141 | 88-96,8-89 | ||
| 142 | 11-84,12-98 | ||
| 143 | 5-8,8-29 | ||
| 144 | 6-38,86-86 | ||
| 145 | 14-33,5-33 | ||
| 146 | 20-95,39-94 | ||
| 147 | 6-99,12-93 | ||
| 148 | 52-91,52-90 | ||
| 149 | 3-99,2-72 | ||
| 150 | 72-96,56-90 | ||
| 151 | 7-84,7-8 | ||
| 152 | 20-37,14-37 | ||
| 153 | 26-74,74-75 | ||
| 154 | 40-54,4-71 | ||
| 155 | 42-42,93-94 | ||
| 156 | 53-69,23-52 | ||
| 157 | 20-96,95-96 | ||
| 158 | 1-18,18-83 | ||
| 159 | 2-3,2-69 | ||
| 160 | 36-87,87-87 | ||
| 161 | 8-94,8-94 | ||
| 162 | 59-99,59-60 | ||
| 163 | 15-35,11-35 | ||
| 164 | 6-26,5-26 | ||
| 165 | 7-12,11-80 | ||
| 166 | 79-79,79-79 | ||
| 167 | 2-47,46-47 | ||
| 168 | 76-96,96-97 | ||
| 169 | 12-79,11-77 | ||
| 170 | 45-71,46-94 | ||
| 171 | 62-63,62-94 | ||
| 172 | 30-84,84-85 | ||
| 173 | 9-35,9-13 | ||
| 174 | 18-60,18-61 | ||
| 175 | 13-90,13-85 | ||
| 176 | 2-38,1-2 | ||
| 177 | 76-81,24-54 | ||
| 178 | 48-49,48-95 | ||
| 179 | 59-92,58-69 | ||
| 180 | 72-72,15-73 | ||
| 181 | 15-16,15-99 | ||
| 182 | 79-85,60-86 | ||
| 183 | 58-58,46-59 | ||
| 184 | 55-60,3-54 | ||
| 185 | 22-26,26-58 | ||
| 186 | 6-86,7-85 | ||
| 187 | 66-76,47-66 | ||
| 188 | 52-73,52-53 | ||
| 189 | 21-76,20-77 | ||
| 190 | 44-73,16-77 | ||
| 191 | 29-80,30-30 | ||
| 192 | 15-47,14-16 | ||
| 193 | 3-75,1-3 | ||
| 194 | 55-61,9-56 | ||
| 195 | 37-55,36-82 | ||
| 196 | 64-83,83-84 | ||
| 197 | 9-91,41-89 | ||
| 198 | 22-86,33-85 | ||
| 199 | 6-19,5-34 | ||
| 200 | 80-92,93-93 | ||
| 201 | 99-99,85-98 | ||
| 202 | 96-99,14-97 | ||
| 203 | 2-72,5-59 | ||
| 204 | 93-94,56-94 | ||
| 205 | 34-83,34-86 | ||
| 206 | 33-34,34-73 | ||
| 207 | 17-84,18-44 | ||
| 208 | 82-83,26-83 | ||
| 209 | 3-85,18-84 | ||
| 210 | 88-88,9-88 | ||
| 211 | 93-93,27-94 | ||
| 212 | 12-13,12-14 | ||
| 213 | 8-90,8-42 | ||
| 214 | 78-86,41-77 | ||
| 215 | 63-79,80-81 | ||
| 216 | 15-66,14-16 | ||
| 217 | 77-77,28-76 | ||
| 218 | 9-96,8-10 | ||
| 219 | 19-78,77-79 | ||
| 220 | 13-95,72-93 | ||
| 221 | 13-49,14-14 | ||
| 222 | 84-85,84-95 | ||
| 223 | 25-37,25-37 | ||
| 224 | 49-93,49-91 | ||
| 225 | 24-78,5-38 | ||
| 226 | 2-92,2-92 | ||
| 227 | 17-90,16-90 | ||
| 228 | 8-50,8-50 | ||
| 229 | 76-99,76-98 | ||
| 230 | 71-86,77-86 | ||
| 231 | 70-71,54-70 | ||
| 232 | 8-84,39-84 | ||
| 233 | 40-58,55-58 | ||
| 234 | 8-87,1-9 | ||
| 235 | 5-7,6-85 | ||
| 236 | 25-97,24-25 | ||
| 237 | 9-97,14-96 | ||
| 238 | 17-48,10-47 | ||
| 239 | 81-87,30-80 | ||
| 240 | 3-83,83-84 | ||
| 241 | 2-7,6-42 | ||
| 242 | 20-70,70-93 | ||
| 243 | 67-85,17-61 | ||
| 244 | 7-18,6-20 | ||
| 245 | 21-73,20-22 | ||
| 246 | 80-81,18-79 | ||
| 247 | 43-95,44-96 | ||
| 248 | 38-45,44-44 | ||
| 249 | 15-91,90-91 | ||
| 250 | 32-44,34-43 | ||
| 251 | 24-93,24-25 | ||
| 252 | 10-16,11-12 | ||
| 253 | 22-92,61-92 | ||
| 254 | 3-7,6-73 | ||
| 255 | 72-79,71-74 | ||
| 256 | 34-47,34-46 | ||
| 257 | 56-96,75-82 | ||
| 258 | 31-48,48-81 | ||
| 259 | 54-81,53-82 | ||
| 260 | 2-91,93-97 | ||
| 261 | 41-74,10-40 | ||
| 262 | 51-63,52-86 | ||
| 263 | 80-90,75-90 | ||
| 264 | 86-87,10-87 | ||
| 265 | 80-94,84-94 | ||
| 266 | 46-47,9-47 | ||
| 267 | 20-77,78-92 | ||
| 268 | 38-38,17-37 | ||
| 269 | 30-76,5-30 | ||
| 270 | 6-58,58-77 | ||
| 271 | 10-73,74-85 | ||
| 272 | 1-96,2-31 | ||
| 273 | 64-73,4-74 | ||
| 274 | 60-79,59-77 | ||
| 275 | 4-98,8-89 | ||
| 276 | 7-9,8-78 | ||
| 277 | 4-6,5-95 | ||
| 278 | 29-93,53-90 | ||
| 279 | 32-94,20-33 | ||
| 280 | 78-91,38-79 | ||
| 281 | 10-95,96-99 | ||
| 282 | 5-97,86-96 | ||
| 283 | 6-65,5-64 | ||
| 284 | 28-71,7-72 | ||
| 285 | 15-54,45-53 | ||
| 286 | 3-87,46-99 | ||
| 287 | 1-90,40-90 | ||
| 288 | 44-86,19-86 | ||
| 289 | 3-94,93-94 | ||
| 290 | 92-93,1-93 | ||
| 291 | 93-93,42-94 | ||
| 292 | 90-97,21-91 | ||
| 293 | 16-94,16-62 | ||
| 294 | 20-27,79-86 | ||
| 295 | 28-28,29-39 | ||
| 296 | 30-94,29-30 | ||
| 297 | 28-68,76-79 | ||
| 298 | 54-73,54-55 | ||
| 299 | 35-36,35-87 | ||
| 300 | 5-42,43-47 | ||
| 301 | 10-90,8-91 | ||
| 302 | 15-74,23-49 | ||
| 303 | 16-97,1-98 | ||
| 304 | 2-82,82-89 | ||
| 305 | 1-3,2-86 | ||
| 306 | 16-87,15-86 | ||
| 307 | 9-10,9-60 | ||
| 308 | 14-90,10-14 | ||
| 309 | 36-85,5-85 | ||
| 310 | 36-41,37-89 | ||
| 311 | 50-50,15-50 | ||
| 312 | 82-86,85-86 | ||
| 313 | 28-66,28-32 | ||
| 314 | 15-84,14-14 | ||
| 315 | 32-69,31-33 | ||
| 316 | 31-95,30-96 | ||
| 317 | 60-85,61-92 | ||
| 318 | 10-87,86-87 | ||
| 319 | 96-99,5-97 | ||
| 320 | 97-97,39-96 | ||
| 321 | 34-35,3-35 | ||
| 322 | 51-88,33-88 | ||
| 323 | 14-49,48-90 | ||
| 324 | 4-51,52-56 | ||
| 325 | 7-76,31-75 | ||
| 326 | 3-99,3-87 | ||
| 327 | 29-86,29-75 | ||
| 328 | 61-64,61-65 | ||
| 329 | 85-97,13-86 | ||
| 330 | 59-67,6-58 | ||
| 331 | 51-97,44-50 | ||
| 332 | 21-64,64-93 | ||
| 333 | 9-56,10-81 | ||
| 334 | 20-51,50-51 | ||
| 335 | 33-87,32-87 | ||
| 336 | 18-79,5-90 | ||
| 337 | 51-51,22-52 | ||
| 338 | 24-83,21-25 | ||
| 339 | 79-93,24-94 | ||
| 340 | 14-14,13-83 | ||
| 341 | 43-49,44-50 | ||
| 342 | 72-72,10-73 | ||
| 343 | 14-57,35-57 | ||
| 344 | 4-63,3-4 | ||
| 345 | 4-93,26-91 | ||
| 346 | 26-93,25-26 | ||
| 347 | 33-35,33-43 | ||
| 348 | 36-87,87-92 | ||
| 349 | 27-69,6-70 | ||
| 350 | 38-60,30-39 | ||
| 351 | 96-96,1-95 | ||
| 352 | 2-96,99-99 | ||
| 353 | 16-87,88-88 | ||
| 354 | 41-52,41-51 | ||
| 355 | 61-77,76-82 | ||
| 356 | 9-77,3-10 | ||
| 357 | 39-50,38-51 | ||
| 358 | 12-63,12-62 | ||
| 359 | 17-30,18-76 | ||
| 360 | 22-86,22-23 | ||
| 361 | 3-43,2-44 | ||
| 362 | 21-66,66-66 | ||
| 363 | 3-64,2-2 | ||
| 364 | 60-65,60-65 | ||
| 365 | 7-42,74-96 | ||
| 366 | 81-98,38-98 | ||
| 367 | 16-24,17-23 | ||
| 368 | 95-97,32-96 | ||
| 369 | 23-38,23-37 | ||
| 370 | 42-54,40-46 | ||
| 371 | 16-18,13-17 | ||
| 372 | 1-81,3-63 | ||
| 373 | 16-17,17-50 | ||
| 374 | 82-87,88-97 | ||
| 375 | 6-47,5-48 | ||
| 376 | 8-81,92-94 | ||
| 377 | 95-97,11-96 | ||
| 378 | 23-94,22-86 | ||
| 379 | 6-35,3-56 | ||
| 380 | 7-93,90-92 | ||
| 381 | 6-49,3-6 | ||
| 382 | 24-86,86-86 | ||
| 383 | 67-78,67-78 | ||
| 384 | 11-98,10-96 | ||
| 385 | 87-88,17-88 | ||
| 386 | 8-98,99-99 | ||
| 387 | 15-73,72-73 | ||
| 388 | 1-60,60-60 | ||
| 389 | 39-45,33-45 | ||
| 390 | 77-95,41-76 | ||
| 391 | 5-23,24-99 | ||
| 392 | 96-98,97-97 | ||
| 393 | 18-55,55-56 | ||
| 394 | 97-98,60-90 | ||
| 395 | 33-34,13-34 | ||
| 396 | 7-96,8-96 | ||
| 397 | 7-32,46-61 | ||
| 398 | 75-93,20-96 | ||
| 399 | 30-99,29-31 | ||
| 400 | 4-99,3-97 | ||
| 401 | 3-30,29-30 | ||
| 402 | 40-40,39-63 | ||
| 403 | 48-49,48-60 | ||
| 404 | 22-24,6-22 | ||
| 405 | 28-28,3-28 | ||
| 406 | 64-64,37-63 | ||
| 407 | 29-48,5-48 | ||
| 408 | 20-37,19-36 | ||
| 409 | 77-77,19-77 | ||
| 410 | 18-85,2-19 | ||
| 411 | 99-99,30-80 | ||
| 412 | 35-36,31-35 | ||
| 413 | 28-79,75-98 | ||
| 414 | 26-94,26-95 | ||
| 415 | 22-97,73-96 | ||
| 416 | 42-42,5-41 | ||
| 417 | 6-8,7-99 | ||
| 418 | 10-14,13-14 | ||
| 419 | 39-72,39-73 | ||
| 420 | 12-90,89-90 | ||
| 421 | 93-94,12-94 | ||
| 422 | 50-88,89-93 | ||
| 423 | 47-88,88-89 | ||
| 424 | 39-64,38-38 | ||
| 425 | 15-79,78-79 | ||
| 426 | 28-32,32-33 | ||
| 427 | 50-65,51-51 | ||
| 428 | 7-79,6-64 | ||
| 429 | 33-49,32-34 | ||
| 430 | 82-95,75-96 | ||
| 431 | 6-14,4-9 | ||
| 432 | 95-95,10-96 | ||
| 433 | 14-51,3-15 | ||
| 434 | 97-98,21-98 | ||
| 435 | 39-61,53-61 | ||
| 436 | 68-69,37-68 | ||
| 437 | 15-73,73-95 | ||
| 438 | 42-70,43-83 | ||
| 439 | 1-60,60-61 | ||
| 440 | 6-11,11-94 | ||
| 441 | 10-79,87-93 | ||
| 442 | 36-40,41-41 | ||
| 443 | 3-17,3-43 | ||
| 444 | 4-81,4-82 | ||
| 445 | 90-91,6-90 | ||
| 446 | 2-3,5-68 | ||
| 447 | 20-98,74-97 | ||
| 448 | 4-86,3-85 | ||
| 449 | 47-49,23-48 | ||
| 450 | 26-89,26-90 | ||
| 451 | 31-42,42-47 | ||
| 452 | 57-81,39-58 | ||
| 453 | 17-87,18-96 | ||
| 454 | 9-77,9-78 | ||
| 455 | 79-88,80-84 | ||
| 456 | 30-84,83-83 | ||
| 457 | 15-89,15-88 | ||
| 458 | 11-11,10-94 | ||
| 459 | 59-82,27-59 | ||
| 460 | 8-78,14-33 | ||
| 461 | 46-95,85-94 | ||
| 462 | 93-97,92-94 | ||
| 463 | 4-34,2-3 | ||
| 464 | 34-80,30-82 | ||
| 465 | 48-83,27-49 | ||
| 466 | 47-99,47-48 | ||
| 467 | 27-51,51-56 | ||
| 468 | 48-49,35-48 | ||
| 469 | 31-51,42-51 | ||
| 470 | 96-97,19-96 | ||
| 471 | 43-44,20-44 | ||
| 472 | 76-76,13-75 | ||
| 473 | 5-90,27-90 | ||
| 474 | 26-27,27-51 | ||
| 475 | 47-54,49-95 | ||
| 476 | 69-72,4-73 | ||
| 477 | 94-98,68-95 | ||
| 478 | 1-2,3-86 | ||
| 479 | 25-90,24-26 | ||
| 480 | 28-90,89-89 | ||
| 481 | 91-91,74-91 | ||
| 482 | 56-95,40-57 | ||
| 483 | 55-92,28-54 | ||
| 484 | 28-34,27-35 | ||
| 485 | 85-87,28-86 | ||
| 486 | 8-10,10-98 | ||
| 487 | 45-45,44-44 | ||
| 488 | 31-83,27-59 | ||
| 489 | 67-84,2-68 | ||
| 490 | 17-69,51-69 | ||
| 491 | 49-52,34-53 | ||
| 492 | 22-81,2-23 | ||
| 493 | 95-96,2-96 | ||
| 494 | 82-99,17-82 | ||
| 495 | 40-57,40-58 | ||
| 496 | 9-40,40-40 | ||
| 497 | 1-2,3-68 | ||
| 498 | 1-97,90-97 | ||
| 499 | 2-20,21-34 | ||
| 500 | 2-2,1-92 | ||
| 501 | 84-86,2-86 | ||
| 502 | 7-92,97-99 | ||
| 503 | 2-6,5-42 | ||
| 504 | 1-52,1-52 | ||
| 505 | 98-99,1-98 | ||
| 506 | 38-80,29-43 | ||
| 507 | 39-69,39-39 | ||
| 508 | 97-99,3-98 | ||
| 509 | 70-71,8-71 | ||
| 510 | 26-52,25-38 | ||
| 511 | 8-92,91-92 | ||
| 512 | 12-49,13-27 | ||
| 513 | 7-95,94-95 | ||
| 514 | 91-99,15-92 | ||
| 515 | 19-45,18-19 | ||
| 516 | 75-76,76-97 | ||
| 517 | 59-74,13-86 | ||
| 518 | 3-3,2-3 | ||
| 519 | 41-60,53-59 | ||
| 520 | 75-99,29-96 | ||
| 521 | 66-68,18-67 | ||
| 522 | 3-91,3-95 | ||
| 523 | 33-98,32-34 | ||
| 524 | 5-78,10-77 | ||
| 525 | 55-95,54-59 | ||
| 526 | 6-81,6-81 | ||
| 527 | 78-94,52-75 | ||
| 528 | 20-93,10-94 | ||
| 529 | 12-37,83-99 | ||
| 530 | 46-93,92-99 | ||
| 531 | 17-79,8-94 | ||
| 532 | 45-99,46-46 | ||
| 533 | 73-90,68-73 | ||
| 534 | 82-83,58-83 | ||
| 535 | 15-88,90-94 | ||
| 536 | 66-96,18-65 | ||
| 537 | 12-87,61-86 | ||
| 538 | 35-85,36-84 | ||
| 539 | 96-96,28-95 | ||
| 540 | 82-95,2-83 | ||
| 541 | 1-2,2-99 | ||
| 542 | 59-88,59-60 | ||
| 543 | 54-90,53-74 | ||
| 544 | 35-48,57-57 | ||
| 545 | 16-28,16-29 | ||
| 546 | 35-45,36-36 | ||
| 547 | 25-39,24-58 | ||
| 548 | 19-74,27-75 | ||
| 549 | 35-73,31-36 | ||
| 550 | 16-76,6-87 | ||
| 551 | 8-99,7-97 | ||
| 552 | 1-1,1-89 | ||
| 553 | 9-74,10-75 | ||
| 554 | 12-74,11-56 | ||
| 555 | 80-81,2-80 | ||
| 556 | 13-97,19-92 | ||
| 557 | 43-83,82-89 | ||
| 558 | 55-59,60-60 | ||
| 559 | 20-79,98-98 | ||
| 560 | 61-62,61-86 | ||
| 561 | 35-82,93-97 | ||
| 562 | 21-42,43-43 | ||
| 563 | 49-94,43-50 | ||
| 564 | 5-81,98-99 | ||
| 565 | 5-95,1-95 | ||
| 566 | 6-80,91-97 | ||
| 567 | 26-85,11-25 | ||
| 568 | 34-68,19-48 | ||
| 569 | 3-99,3-87 | ||
| 570 | 81-81,19-81 | ||
| 571 | 8-47,8-48 | ||
| 572 | 46-70,46-71 | ||
| 573 | 13-73,46-73 | ||
| 574 | 13-83,14-82 | ||
| 575 | 6-97,96-99 | ||
| 576 | 19-33,18-34 | ||
| 577 | 30-99,2-99 | ||
| 578 | 50-84,1-84 | ||
| 579 | 6-97,6-96 | ||
| 580 | 96-96,6-96 | ||
| 581 | 10-96,9-94 | ||
| 582 | 38-39,38-43 | ||
| 583 | 18-94,19-97 | ||
| 584 | 86-86,87-91 | ||
| 585 | 8-98,8-97 | ||
| 586 | 84-86,78-85 | ||
| 587 | 23-71,72-72 | ||
| 588 | 5-99,98-98 | ||
| 589 | 26-75,26-75 | ||
| 590 | 87-87,20-88 | ||
| 591 | 11-85,7-8 | ||
| 592 | 52-61,45-62 | ||
| 593 | 42-97,42-97 | ||
| 594 | 25-89,21-24 | ||
| 595 | 95-96,4-93 | ||
| 596 | 66-69,67-68 | ||
| 597 | 2-93,94-96 | ||
| 598 | 8-9,9-81 | ||
| 599 | 72-97,21-98 | ||
| 600 | 59-75,58-60 | ||
| 601 | 14-16,15-96 | ||
| 602 | 71-71,70-71 | ||
| 603 | 10-79,3-10 | ||
| 604 | 54-54,53-98 | ||
| 605 | 2-4,3-69 | ||
| 606 | 14-66,14-67 | ||
| 607 | 16-17,16-65 | ||
| 608 | 27-99,76-99 | ||
| 609 | 19-94,95-97 | ||
| 610 | 3-83,83-84 | ||
| 611 | 36-57,31-56 | ||
| 612 | 34-83,33-83 | ||
| 613 | 56-67,66-88 | ||
| 614 | 30-70,17-31 | ||
| 615 | 24-80,79-80 | ||
| 616 | 43-52,42-43 | ||
| 617 | 10-65,66-68 | ||
| 618 | 50-69,1-70 | ||
| 619 | 10-10,10-33 | ||
| 620 | 10-99,9-98 | ||
| 621 | 86-96,85-85 | ||
| 622 | 30-65,31-60 | ||
| 623 | 18-81,17-19 | ||
| 624 | 12-84,49-71 | ||
| 625 | 19-98,18-18 | ||
| 626 | 3-67,4-68 | ||
| 627 | 88-99,69-99 | ||
| 628 | 11-87,10-11 | ||
| 629 | 98-98,37-85 | ||
| 630 | 8-90,47-89 | ||
| 631 | 2-43,67-79 | ||
| 632 | 5-5,4-97 | ||
| 633 | 31-94,93-96 | ||
| 634 | 13-83,14-14 | ||
| 635 | 72-85,71-84 | ||
| 636 | 51-53,26-52 | ||
| 637 | 3-58,57-62 | ||
| 638 | 41-58,41-58 | ||
| 639 | 29-84,30-56 | ||
| 640 | 89-98,21-90 | ||
| 641 | 51-97,50-94 | ||
| 642 | 8-96,8-95 | ||
| 643 | 1-4,4-81 | ||
| 644 | 23-51,52-95 | ||
| 645 | 29-61,8-60 | ||
| 646 | 11-15,1-5 | ||
| 647 | 2-75,7-75 | ||
| 648 | 42-66,46-66 | ||
| 649 | 53-93,53-94 | ||
| 650 | 5-99,3-6 | ||
| 651 | 2-5,6-13 | ||
| 652 | 65-97,46-99 | ||
| 653 | 51-72,50-90 | ||
| 654 | 36-65,64-66 | ||
| 655 | 1-4,4-94 | ||
| 656 | 7-8,7-86 | ||
| 657 | 4-89,3-90 | ||
| 658 | 61-98,60-62 | ||
| 659 | 40-81,19-81 | ||
| 660 | 28-73,27-73 | ||
| 661 | 4-98,6-97 | ||
| 662 | 63-73,63-89 | ||
| 663 | 13-97,96-98 | ||
| 664 | 5-13,13-88 | ||
| 665 | 24-92,7-92 | ||
| 666 | 15-31,14-28 | ||
| 667 | 2-88,97-97 | ||
| 668 | 11-45,11-45 | ||
| 669 | 40-82,82-82 | ||
| 670 | 51-51,50-60 | ||
| 671 | 84-91,21-83 | ||
| 672 | 71-98,71-97 | ||
| 673 | 21-95,31-94 | ||
| 674 | 1-97,1-41 | ||
| 675 | 2-3,2-84 | ||
| 676 | 3-4,4-91 | ||
| 677 | 98-98,17-97 | ||
| 678 | 15-15,16-84 | ||
| 679 | 43-48,11-37 | ||
| 680 | 13-83,11-15 | ||
| 681 | 88-96,3-96 | ||
| 682 | 55-91,24-55 | ||
| 683 | 4-96,96-99 | ||
| 684 | 66-82,80-80 | ||
| 685 | 3-61,62-93 | ||
| 686 | 99-99,11-70 | ||
| 687 | 56-56,57-59 | ||
| 688 | 40-40,39-99 | ||
| 689 | 57-58,35-58 | ||
| 690 | 36-95,94-94 | ||
| 691 | 2-63,64-81 | ||
| 692 | 18-24,24-62 | ||
| 693 | 63-98,12-63 | ||
| 694 | 81-81,18-80 | ||
| 695 | 19-61,19-20 | ||
| 696 | 11-18,11-22 | ||
| 697 | 9-14,9-11 | ||
| 698 | 6-7,6-85 | ||
| 699 | 41-51,41-41 | ||
| 700 | 18-43,17-19 | ||
| 701 | 8-70,71-84 | ||
| 702 | 76-76,11-75 | ||
| 703 | 87-88,9-88 | ||
| 704 | 55-73,54-56 | ||
| 705 | 56-57,57-68 | ||
| 706 | 4-11,11-88 | ||
| 707 | 8-81,11-80 | ||
| 708 | 25-70,71-71 | ||
| 709 | 22-45,23-48 | ||
| 710 | 14-84,5-95 | ||
| 711 | 58-68,47-58 | ||
| 712 | 17-66,38-66 | ||
| 713 | 58-89,88-89 | ||
| 714 | 7-28,14-27 | ||
| 715 | 31-87,22-63 | ||
| 716 | 92-96,39-91 | ||
| 717 | 14-41,14-14 | ||
| 718 | 62-65,3-61 | ||
| 719 | 48-66,48-66 | ||
| 720 | 4-95,2-96 | ||
| 721 | 7-7,8-77 | ||
| 722 | 17-50,18-51 | ||
| 723 | 80-89,14-79 | ||
| 724 | 28-50,28-89 | ||
| 725 | 32-40,7-40 | ||
| 726 | 19-77,18-19 | ||
| 727 | 34-60,1-6 | ||
| 728 | 33-50,51-91 | ||
| 729 | 16-17,16-54 | ||
| 730 | 29-45,19-32 | ||
| 731 | 36-42,37-37 | ||
| 732 | 1-95,3-87 | ||
| 733 | 70-93,92-98 | ||
| 734 | 4-11,46-79 | ||
| 735 | 20-82,1-19 | ||
| 736 | 40-41,2-42 | ||
| 737 | 75-77,31-76 | ||
| 738 | 8-14,14-78 | ||
| 739 | 69-91,68-69 | ||
| 740 | 9-63,77-89 | ||
| 741 | 47-70,39-47 | ||
| 742 | 3-98,97-98 | ||
| 743 | 84-84,30-84 | ||
| 744 | 9-9,10-95 | ||
| 745 | 24-24,23-92 | ||
| 746 | 27-95,21-95 | ||
| 747 | 2-99,2-99 | ||
| 748 | 38-59,54-59 | ||
| 749 | 20-81,15-82 | ||
| 750 | 6-73,13-73 | ||
| 751 | 98-98,99-99 | ||
| 752 | 18-92,17-19 | ||
| 753 | 93-94,5-93 | ||
| 754 | 13-99,13-14 | ||
| 755 | 34-34,34-79 | ||
| 756 | 12-88,87-96 | ||
| 757 | 55-67,83-89 | ||
| 758 | 6-30,1-31 | ||
| 759 | 24-80,24-80 | ||
| 760 | 5-90,16-91 | ||
| 761 | 49-68,10-49 | ||
| 762 | 11-14,13-92 | ||
| 763 | 23-85,24-92 | ||
| 764 | 67-81,67-68 | ||
| 765 | 32-99,32-89 | ||
| 766 | 85-86,35-84 | ||
| 767 | 21-21,20-60 | ||
| 768 | 25-85,25-84 | ||
| 769 | 20-56,21-21 | ||
| 770 | 6-9,9-71 | ||
| 771 | 82-98,26-81 | ||
| 772 | 37-37,15-38 | ||
| 773 | 5-97,3-5 | ||
| 774 | 11-18,19-26 | ||
| 775 | 14-69,6-83 | ||
| 776 | 51-73,50-75 | ||
| 777 | 29-85,19-28 | ||
| 778 | 8-59,5-60 | ||
| 779 | 92-92,46-93 | ||
| 780 | 8-57,7-9 | ||
| 781 | 16-16,16-84 | ||
| 782 | 10-32,10-11 | ||
| 783 | 1-86,1-86 | ||
| 784 | 26-98,19-91 | ||
| 785 | 7-97,6-94 | ||
| 786 | 41-81,42-80 | ||
| 787 | 3-97,13-98 | ||
| 788 | 24-25,24-87 | ||
| 789 | 54-54,18-55 | ||
| 790 | 49-49,33-50 | ||
| 791 | 6-80,79-80 | ||
| 792 | 38-95,38-95 | ||
| 793 | 52-84,52-77 | ||
| 794 | 6-92,1-6 | ||
| 795 | 1-3,3-88 | ||
| 796 | 6-71,2-5 | ||
| 797 | 16-46,2-17 | ||
| 798 | 79-86,15-80 | ||
| 799 | 6-6,5-54 | ||
| 800 | 8-41,11-40 | ||
| 801 | 53-98,52-54 | ||
| 802 | 2-79,1-3 | ||
| 803 | 51-70,50-52 | ||
| 804 | 55-55,56-69 | ||
| 805 | 4-61,10-97 | ||
| 806 | 75-92,12-76 | ||
| 807 | 27-79,92-94 | ||
| 808 | 6-55,5-7 | ||
| 809 | 19-25,20-22 | ||
| 810 | 79-92,65-93 | ||
| 811 | 95-99,27-94 | ||
| 812 | 23-88,23-88 | ||
| 813 | 82-83,83-96 | ||
| 814 | 2-94,2-74 | ||
| 815 | 14-71,6-14 | ||
| 816 | 6-14,5-7 | ||
| 817 | 3-89,1-2 | ||
| 818 | 48-82,13-26 | ||
| 819 | 48-80,26-48 | ||
| 820 | 43-93,92-92 | ||
| 821 | 32-51,85-91 | ||
| 822 | 3-5,5-90 | ||
| 823 | 99-99,95-97 | ||
| 824 | 38-39,38-88 | ||
| 825 | 93-95,75-94 | ||
| 826 | 15-64,14-16 | ||
| 827 | 84-94,67-90 | ||
| 828 | 22-47,48-80 | ||
| 829 | 41-56,5-57 | ||
| 830 | 2-80,7-79 | ||
| 831 | 22-71,21-23 | ||
| 832 | 21-49,20-22 | ||
| 833 | 95-95,61-95 | ||
| 834 | 56-57,57-58 | ||
| 835 | 25-27,26-62 | ||
| 836 | 52-76,41-61 | ||
| 837 | 28-98,71-98 | ||
| 838 | 74-93,4-93 | ||
| 839 | 35-74,73-98 | ||
| 840 | 4-57,3-57 | ||
| 841 | 4-99,32-98 | ||
| 842 | 8-75,7-75 | ||
| 843 | 23-67,23-68 | ||
| 844 | 15-15,15-56 | ||
| 845 | 3-97,1-98 | ||
| 846 | 10-90,91-91 | ||
| 847 | 18-30,17-19 | ||
| 848 | 10-38,1-90 | ||
| 849 | 50-73,37-73 | ||
| 850 | 40-91,92-95 | ||
| 851 | 39-39,40-91 | ||
| 852 | 86-87,7-87 | ||
| 853 | 12-37,37-94 | ||
| 854 | 78-87,14-50 | ||
| 855 | 89-95,11-90 | ||
| 856 | 60-98,4-94 | ||
| 857 | 41-82,81-98 | ||
| 858 | 66-92,67-67 | ||
| 859 | 88-92,5-89 | ||
| 860 | 86-91,85-86 | ||
| 861 | 6-98,97-97 | ||
| 862 | 34-87,95-95 | ||
| 863 | 44-46,45-78 | ||
| 864 | 7-87,17-87 | ||
| 865 | 7-96,95-97 | ||
| 866 | 15-75,76-85 | ||
| 867 | 1-98,2-93 | ||
| 868 | 3-55,50-54 | ||
| 869 | 87-94,72-86 | ||
| 870 | 19-70,19-63 | ||
| 871 | 7-51,50-79 | ||
| 872 | 3-73,3-73 | ||
| 873 | 32-38,31-34 | ||
| 874 | 2-99,98-98 | ||
| 875 | 3-4,5-88 | ||
| 876 | 16-37,38-38 | ||
| 877 | 39-48,40-42 | ||
| 878 | 65-77,65-77 | ||
| 879 | 5-94,3-96 | ||
| 880 | 28-89,97-98 | ||
| 881 | 34-77,53-77 | ||
| 882 | 24-54,25-28 | ||
| 883 | 6-48,7-7 | ||
| 884 | 6-38,3-6 | ||
| 885 | 10-83,9-11 | ||
| 886 | 26-65,64-84 | ||
| 887 | 50-85,84-86 | ||
| 888 | 36-91,37-92 | ||
| 889 | 2-2,2-84 | ||
| 890 | 4-6,5-83 | ||
| 891 | 18-71,35-70 | ||
| 892 | 5-85,5-64 | ||
| 893 | 94-99,13-95 | ||
| 894 | 1-32,2-9 | ||
| 895 | 11-71,53-98 | ||
| 896 | 99-99,18-97 | ||
| 897 | 26-46,22-27 | ||
| 898 | 39-78,91-93 | ||
| 899 | 38-43,38-44 | ||
| 900 | 14-76,15-54 | ||
| 901 | 91-95,23-90 | ||
| 902 | 7-55,3-55 | ||
| 903 | 91-95,29-92 | ||
| 904 | 10-23,9-59 | ||
| 905 | 21-67,20-66 | ||
| 906 | 17-27,20-26 | ||
| 907 | 2-94,1-94 | ||
| 908 | 16-97,13-97 | ||
| 909 | 67-68,67-94 | ||
| 910 | 81-83,27-82 | ||
| 911 | 51-69,81-96 | ||
| 912 | 79-81,57-80 | ||
| 913 | 55-55,55-68 | ||
| 914 | 34-96,34-95 | ||
| 915 | 83-85,19-84 | ||
| 916 | 4-81,3-80 | ||
| 917 | 16-23,23-97 | ||
| 918 | 45-74,46-74 | ||
| 919 | 2-98,98-99 | ||
| 920 | 37-59,35-59 | ||
| 921 | 72-74,70-74 | ||
| 922 | 16-91,91-92 | ||
| 923 | 43-68,44-75 | ||
| 924 | 4-77,7-92 | ||
| 925 | 93-94,6-94 | ||
| 926 | 18-92,93-94 | ||
| 927 | 51-76,76-76 | ||
| 928 | 17-42,41-79 | ||
| 929 | 61-62,49-61 | ||
| 930 | 19-77,9-9 | ||
| 931 | 11-70,43-69 | ||
| 932 | 21-62,53-61 | ||
| 933 | 40-77,78-89 | ||
| 934 | 10-55,10-46 | ||
| 935 | 5-70,98-99 | ||
| 936 | 19-21,20-86 | ||
| 937 | 7-68,10-67 | ||
| 938 | 2-24,3-3 | ||
| 939 | 65-70,46-66 | ||
| 940 | 1-78,2-77 | ||
| 941 | 71-95,17-72 | ||
| 942 | 25-88,88-89 | ||
| 943 | 13-98,14-14 | ||
| 944 | 7-81,7-8 | ||
| 945 | 8-99,8-98 | ||
| 946 | 13-97,14-97 | ||
| 947 | 3-56,3-4 | ||
| 948 | 89-99,29-73 | ||
| 949 | 41-50,28-51 | ||
| 950 | 76-88,76-87 | ||
| 951 | 82-96,25-31 | ||
| 952 | 30-41,8-42 | ||
| 953 | 27-39,38-38 | ||
| 954 | 46-71,46-71 | ||
| 955 | 23-88,10-88 | ||
| 956 | 28-83,28-84 | ||
| 957 | 82-94,81-86 | ||
| 958 | 99-99,1-99 | ||
| 959 | 4-46,4-63 | ||
| 960 | 7-68,67-99 | ||
| 961 | 5-92,93-97 | ||
| 962 | 91-95,3-89 | ||
| 963 | 57-76,3-70 | ||
| 964 | 1-89,53-88 | ||
| 965 | 4-32,6-31 | ||
| 966 | 75-76,2-76 | ||
| 967 | 17-17,18-37 | ||
| 968 | 43-90,89-94 | ||
| 969 | 4-65,1-66 | ||
| 970 | 88-91,90-91 | ||
| 971 | 43-57,44-84 | ||
| 972 | 2-95,2-94 | ||
| 973 | 3-31,1-32 | ||
| 974 | 12-94,30-93 | ||
| 975 | 12-94,5-94 | ||
| 976 | 35-54,34-54 | ||
| 977 | 30-81,30-30 | ||
| 978 | 51-53,52-98 | ||
| 979 | 68-97,41-69 | ||
| 980 | 32-94,19-31 | ||
| 981 | 14-70,7-15 | ||
| 982 | 1-99,41-98 | ||
| 983 | 41-63,41-63 | ||
| 984 | 88-88,27-87 | ||
| 985 | 54-56,53-55 | ||
| 986 | 26-26,27-71 | ||
| 987 | 29-64,1-62 | ||
| 988 | 4-54,1-92 | ||
| 989 | 88-89,22-89 | ||
| 990 | 15-88,15-16 | ||
| 991 | 21-95,43-96 | ||
| 992 | 12-13,12-27 | ||
| 993 | 10-96,23-96 | ||
| 994 | 82-83,22-83 | ||
| 995 | 13-85,13-86 | ||
| 996 | 77-83,4-65 | ||
| 997 | 3-91,3-63 | ||
| 998 | 73-98,73-98 | ||
| 999 | 49-49,8-50 | ||
| 1000 | 3-96,4-4 | ||
diff --git a/day4/solution.nim b/day4/solution.nim new file mode 100644 index 0000000..36e90fb --- /dev/null +++ b/day4/solution.nim | |||
| @@ -0,0 +1,56 @@ | |||
| 1 | import std/strutils | ||
| 2 | import std/sequtils | ||
| 3 | |||
| 4 | type | ||
| 5 | # We use begin and length for Range representation to simplify calculations later | ||
| 6 | Range = tuple[begin: int, length: int] | ||
| 7 | Entry = tuple[first: Range, second: Range] | ||
| 8 | |||
| 9 | proc part1(entries: seq[Entry]): int = | ||
| 10 | var score = 0 | ||
| 11 | for e in entries: | ||
| 12 | var r: Entry | ||
| 13 | # Let first become the leftmost range. In case both ranges start at the same index, we consider the longest one to be first | ||
| 14 | if e.first.begin < e.second.begin or (e.first.begin == e.second.begin and e.first.length >= e.second.length): | ||
| 15 | r.first = e.first | ||
| 16 | r.second = e.second | ||
| 17 | else: | ||
| 18 | r.first = e.second | ||
| 19 | r.second = e.first | ||
| 20 | |||
| 21 | if r.first.length >= r.second.length + r.second.begin - r.first.begin: | ||
| 22 | score += 1 | ||
| 23 | |||
| 24 | return score | ||
| 25 | |||
| 26 | proc part2(entries: seq[Entry]): int = | ||
| 27 | var score = 0 | ||
| 28 | for e in entries: | ||
| 29 | var r: Entry | ||
| 30 | # Let first become the leftmost range. In case both ranges start at the same index, we consider the longest one to be first | ||
| 31 | if e.first.begin < e.second.begin or (e.first.begin == e.second.begin and e.first.length >= e.second.length): | ||
| 32 | r.first = e.first | ||
| 33 | r.second = e.second | ||
| 34 | else: | ||
| 35 | r.first = e.second | ||
| 36 | r.second = e.first | ||
| 37 | |||
| 38 | if r.first.begin + r.first.length - 1 >= r.second.begin: | ||
| 39 | score += 1 | ||
| 40 | |||
| 41 | return score | ||
| 42 | |||
| 43 | let | ||
| 44 | content = readFile("./input.txt").strip().splitLines() | ||
| 45 | entries = map( | ||
| 46 | content, | ||
| 47 | proc(line: string): Entry = | ||
| 48 | let tokens = map(line.split({',', '-'}), proc(token: string): int = token.parseInt()) | ||
| 49 | ( | ||
| 50 | (tokens[0], tokens[1] - tokens[0]+1), | ||
| 51 | (tokens[2], tokens[3] - tokens[2]+1) | ||
| 52 | ) | ||
| 53 | ) | ||
| 54 | |||
| 55 | echo part1(entries) | ||
| 56 | echo part2(entries) | ||
| @@ -0,0 +1,15 @@ | |||
| 1 | #!/bin/sh | ||
| 2 | source ../cookie.sh | ||
| 3 | |||
| 4 | if [ $# -eq 0 ] | ||
| 5 | then | ||
| 6 | echo "No arguments provided." | ||
| 7 | exit 1 | ||
| 8 | fi | ||
| 9 | |||
| 10 | DAY=$1 | ||
| 11 | DIR="day$DAY" | ||
| 12 | echo "Initializing day $DAY in directory $DIR" | ||
| 13 | |||
| 14 | mkdir -p $DIR && curl "https://adventofcode.com/2022/day/$DAY/input" -H "Cookie: session=$ADVENT_SESSION" > $DIR/input.txt | ||
| 15 | touch $DIR/solution.nim | ||
