diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..5a05ac5 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +*~ +*__pycache__ diff --git a/2020/01/demo.txt b/2020/01/demo.txt new file mode 100644 index 0000000..e3fb011 --- /dev/null +++ b/2020/01/demo.txt @@ -0,0 +1,6 @@ +1721 +979 +366 +299 +675 +1456 diff --git a/2020/01/input.txt b/2020/01/input.txt new file mode 100644 index 0000000..7346cba --- /dev/null +++ b/2020/01/input.txt @@ -0,0 +1,200 @@ +1768 +1847 +1905 +1713 +1826 +1846 +1824 +1976 +1687 +1867 +1665 +1606 +1946 +1886 +1858 +346 +1739 +1752 +1700 +1922 +1865 +1609 +1617 +1932 +1346 +1213 +1933 +834 +1598 +1191 +1979 +1756 +1216 +1820 +1792 +1537 +1341 +1390 +1709 +1458 +1808 +1885 +1679 +1977 +1869 +1614 +1938 +1622 +1868 +1844 +1969 +1822 +1510 +1994 +1337 +1883 +1519 +1766 +1554 +1825 +1828 +1972 +1380 +1878 +1345 +1469 +1794 +1898 +1805 +1911 +1913 +1910 +1318 +1862 +1921 +1753 +1823 +1896 +1316 +1381 +1430 +1962 +1958 +1702 +1923 +1993 +1789 +2002 +1788 +1970 +1955 +1887 +1870 +225 +1696 +1975 +699 +294 +1605 +1500 +1777 +1750 +1857 +1540 +1329 +1974 +1947 +1516 +1925 +1945 +350 +1669 +1775 +1536 +1871 +1917 +1249 +1971 +2009 +1585 +1986 +1701 +1832 +1754 +1195 +1697 +1941 +1919 +2006 +1667 +1816 +1765 +1631 +2003 +1861 +1000 +1791 +1786 +1843 +1939 +1951 +269 +1790 +1895 +1355 +1833 +1466 +1998 +1806 +1881 +1234 +1856 +1619 +1727 +1874 +1877 +195 +1783 +1797 +2010 +1764 +1863 +1852 +1841 +1892 +1562 +1650 +1942 +1695 +1730 +1965 +1632 +1981 +1900 +1991 +1884 +1278 +1062 +1394 +1999 +2000 +1827 +1873 +1926 +1434 +1802 +1579 +1879 +1671 +1549 +1875 +1838 +1338 +1864 +1718 +1800 +1928 +1749 +1990 +1705 diff --git a/2020/01/result.py b/2020/01/result.py new file mode 100644 index 0000000..b7144a6 --- /dev/null +++ b/2020/01/result.py @@ -0,0 +1,24 @@ +import collections + +sum = 2020 +eingabe = [] + +with open('./input.txt') as f: + for line in f: + eingabe.append(int(line)) + +# print(eingabe) + +sumtable = [] + +for summ1 in eingabe: + suche = 2020 - summ1 + sumtable.append(suche) + if suche in eingabe: + print('{} + {} = {}'.format(summ1, suche, int(summ1)+int(suche))) + print('found') + + +print(eingabe, len(eingabe)) +print(sumtable) + diff --git a/2020/01/result2.py b/2020/01/result2.py new file mode 100644 index 0000000..b2ddc53 --- /dev/null +++ b/2020/01/result2.py @@ -0,0 +1,28 @@ +import collections + +sum = 2020 +eingabe = [] + +with open('./input.txt') as f: + for line in f: + eingabe.append(int(line)) + +# print(eingabe) + +sumtable = [] + +for summ1 in eingabe: + for summ2 in eingabe: + suche = 2020 - (summ1+summ2) + if suche in eingabe: + if suche not in sumtable: + sumtable.append(suche) + print('{} + {} + {} = {}'.format(summ1, summ2, suche, int(summ1)+int(summ2)+int(suche))) + print('found') + + +print(eingabe, len(eingabe)) +print(sumtable) + +print('{} * {} * {} = {}'.format(sumtable[0], sumtable[1], sumtable[2], sumtable[0]*sumtable[1]*sumtable[2])) + diff --git a/2020/02/input.txt b/2020/02/input.txt new file mode 100644 index 0000000..da2de15 --- /dev/null +++ b/2020/02/input.txt @@ -0,0 +1,1000 @@ +9-10 b: bbktbbbxhfbpb +2-10 x: xxnxxxwxxsx +5-7 w: ghwwdrr +4-6 z: nzzjzk +7-8 s: szsssswfs +12-13 r: rrrrrrrrwrrfh +9-11 k: vclfkkfcdbwwk +10-13 v: wcnzkqgvvgxldxl +4-10 m: mmmmqmcmlmvmm +9-10 n: nnnnxnnnnr +5-19 r: drwrmrvprrrdrrrrrkv +7-10 s: sppscfwscfsszbsf +2-6 z: zrzshvzlzkxzp +9-15 f: ffffxffrffwfffffff +4-6 q: qsqqqqgqqg +1-4 d: mddd +3-5 g: qhgsgpjdphghhjwqx +1-9 b: jqmxlrdbbbfnwtlqjbbf +2-4 q: qqqq +5-8 s: ssssswsss +5-9 n: njnnksntk +1-11 t: wtttttttttrtttttttt +1-5 r: rrwgrrck +4-10 l: jlgxxlgllql +4-16 g: hgzjhgggcgnwddkq +2-5 s: smssk +5-9 r: rqnbnrrnnrwhdrr +6-12 x: xxxrxqxxxqxxkxs +3-4 j: jjtrjj +2-4 z: cnzzt +2-8 c: ccbcbcbncxxgcngrck +12-15 v: vdvvlvvzvvvgvvv +2-3 q: pqqtbwkr +2-6 t: ttctdtdtts +5-9 c: cccclcccpcccvc +1-4 b: dbjbk +4-15 q: zgppzlxqvrdvnkkgnr +10-12 q: qpqsqqqhqslqqnnqjqqg +13-14 k: kksmtsrkrwxkkk +12-16 z: zgzvzzzzzzzzzzzz +1-2 c: cczfkcmsdnghcnmhvx +5-10 b: bbbbbjbzzbbbb +1-4 l: mllt +7-8 k: kkkkdkkkkk +1-6 k: ctprksgrdgkg +9-11 s: ssssssstsss +5-6 h: hhhhpq +6-7 r: rrrrrrkrr +2-5 x: xxqrxwrchhd +15-16 r: rrrrbrrrrrdrrrrrr +2-3 c: ccrccz +4-6 j: jbkjnjddjhjhjqbxpzf +9-10 q: zqqkqvqskqqzzqcjqq +9-16 w: wwgwwwwwhwwwwwws +11-13 b: bbbbvbbbbblbrdb +2-5 p: pppbbp +8-11 x: xxxxrxkvmxlxwp +11-15 k: kkkkkkkkkkkxkbkjk +10-11 m: smmmmmmmmmnm +3-4 s: hsssv +3-6 s: gsxznsssbbtsl +3-5 n: nngnp +16-17 t: mntvzrcdttplrfzkv +9-12 g: fgggmgggfggm +1-15 l: lclwqxcczgnktqltm +14-18 f: tfkfrbbznftcfftbmfxf +3-5 q: qqbqc +10-11 m: mmmmmmmmmmxmmm +7-9 f: ffjfffnjnff +13-20 x: sjxdxqcxxxxqxkxxxxxq +14-17 s: ssssssgsssszspssb +5-13 m: kmmctmsmmmglzxm +4-7 s: qhrhsdbsmmlstznms +13-15 j: jjjjljjjjjjjqjj +5-16 n: ncnnnsvlpndnkvvrcf +14-18 n: nnnnnnnnnnnnnknnnb +5-6 v: jvvvvvvvppvt +1-16 f: fffzkffffknfrfqqf +6-8 x: xnxxkwknxlxxbbx +8-9 l: lllllllft +6-10 b: nrbmbbrhbfrbnn +3-7 s: sssssss +7-13 k: cpmxcndgssktpkkpfkk +3-6 r: rnrnrr +10-11 n: nnnnxnngrxhnn +14-15 g: dwggggggggjvgkgqgggg +3-5 g: gkgggks +2-13 d: vddnpddsdpddd +14-15 j: jjjjjjjjjjjjjjj +12-13 m: mmmmhmmmmxmmmm +6-7 s: sdssfpwsskqbq +2-13 v: mvvvvvvdvjvvvr +4-5 d: wldddd +9-16 v: rvvvmvgsvvvvvhjvvqs +17-18 j: jjjjjjjjjjjjjjjjjj +2-13 j: jjjjjjjbjjjjj +6-16 b: rgkcwbcnrdbrqvqbbq +2-11 t: btttbttznrctwwnltvnt +2-4 d: qsdvsgtd +5-10 t: ttttttttltt +5-6 m: mmqmmm +3-6 v: zjxcgdvswnfvvvv +13-14 s: sssgssrpssssszss +15-20 k: kkkkkkkkkkkkkkkkkkkk +5-6 x: xxxxsl +5-8 s: ssjszwsts +6-10 q: qqcqqqbqqp +11-12 m: mmmmmmmmmmjm +5-7 s: jszjsgsxtzkspgs +3-5 r: rrbprp +14-18 t: ttttttttsttttttttt +2-3 c: kccc +5-8 g: ggtgfggsgggggggggggg +5-12 n: nnnnmsnnnnbz +13-15 s: svsssssslsbsssssssz +11-18 s: ssbscmdbssksswksss +3-11 g: gggjwgrggzxmxbgg +1-16 d: dsndtgbmdrdxbddddjdd +12-13 b: bbrdbkbmbvbbb +3-6 g: cxwmbgmxg +7-8 t: ttttttkrcwq +4-8 w: wwwwtwwmkw +7-13 l: llfllmlslpslltll +3-10 n: nnnnnnnnnnnnnn +3-8 w: wwwhwwwwwrdpww +2-5 x: xxqxxt +13-14 h: hhhhhhhhhhhhrth +6-7 j: jfjjnrjjj +1-6 z: zdmsjnz +1-13 t: gjbzdcntxhfmg +3-5 c: clccczc +14-17 z: gzzwtvhzgrzxzrxxhcz +1-2 n: cnnn +12-14 q: qqqqqqqqqqqdqj +9-10 v: vvvvvvvvtd +3-8 t: mxptddtdttb +8-10 t: ttpttttttw +17-20 w: wgwwjqdwwwfgsrwwwsgw +3-4 v: fsvvdv +9-10 m: zxmbtjhpmhwx +13-14 b: bbbbssbbbwjqms +4-9 j: xsfvbjdmj +2-8 r: rsrrrrrlr +8-11 j: jjjjgjcjjngjfsjs +2-4 s: swsvs +12-13 p: prpppppvpppkhp +9-10 q: qqqqqqqqqs +9-10 b: bbbbbbbkbbb +8-13 t: tttttttlttttjt +3-7 b: bbgbbkbbbbbbbjp +9-11 w: wwwwwwwwwww +14-15 t: httttttttttttpmt +11-17 k: kfkkkkkkkkqkkkkkhkk +1-8 p: phqgprxp +7-16 j: djjgjjdjbwdjzjjcjdjj +1-3 w: wdjpt +17-18 w: wwzwwwwwwwwwwwwwnpw +2-4 h: hlhxkhhh +14-17 c: mbwhtknbvrqrzxprcctd +9-10 r: rrrrrrrrgxr +15-17 k: krkkkkkkkkqkkkfks +7-9 j: jjjjjqjjrkj +4-6 p: pwtpppj +4-5 w: wwwww +10-12 l: lllllllllllll +11-13 c: zkccccdcccccxcvtc +14-17 f: nbfhblbmqzrmrfzcfn +4-9 g: xvbggpltgglvggmgnpxk +1-4 k: mwkk +2-3 c: gcpckck +2-13 x: xbxxxxxxxxxxcxx +7-10 h: hhrhhhhhhh +1-3 p: npxrvvcgjpf +15-16 x: xxxxxxxxxxxxxcxx +17-18 d: dddddddddddddddddg +3-4 v: vvpb +3-5 s: zzsss +3-4 m: mmmmmmmmmmm +2-7 s: tsxlhfvtbzkkqssmss +4-11 c: bdkskbwctpckccbzbcc +8-9 g: ggggggggg +4-8 j: jjjkjjjjjj +7-10 f: qfffgfdffzff +12-14 j: jjjjjjvjjjjjjnjjj +6-7 b: kbbkqbbbhxqcdpbvb +1-6 x: gxlqxxxx +5-14 k: xvgfkksvtccfvkmbkmz +11-13 v: nvvvvvvvvvrvv +5-6 x: xbxnvx +12-13 f: fffffcfffffnnf +5-6 z: zzzwzzz +5-9 r: rsnzrrfrrrsmlr +7-8 z: zfzzzrbzzz +7-10 x: slxvrxnlwh +12-14 p: pppppppppppdpxp +11-18 q: qqqqqqqqpbqqlfqqwq +1-5 b: bqpglwpwbzzcdxhxqwq +14-16 q: qqqqqqqqqqqqqqqqqq +13-16 j: jjjjjjjjjjjjdjjq +2-8 j: jjljjnjkjzvjjq +7-8 l: lrdlzlqjllm +2-3 n: pkjt +1-2 z: jzzz +13-16 j: jjtjjjjjjjwjjjjkj +1-8 s: jdkssbsqks +12-13 p: ppppcplbpfppppppp +1-3 r: rrrr +5-9 h: hhhhhmmhm +6-8 q: vdqqvqqqz +5-12 k: vkrkksdkslmsrkxtslk +3-5 n: sldjnxplwngpnsqm +10-11 g: ggpgggngggng +13-15 g: kgggxggggrgglglvgf +14-16 h: hhhhhrhhwghkhhhhhhh +5-6 g: qqrghgwx +17-18 c: ccccccccvcccccccgw +7-8 r: rrrxrprr +2-3 z: ptpzzvc +3-7 b: bbbbbbb +1-2 n: szbzvnlxc +4-5 t: tttrt +12-14 m: mmmmmmmmmmmmmm +7-11 c: bscccccxccc +10-20 g: nvshfzjmtgsrnhtjgzzg +2-4 l: jhlspd +2-17 j: jngjjjcjhjjjjjgjs +3-8 t: tttttsswttt +7-18 t: tttttttttttttttttw +2-10 c: ccrcjkpkccvlbckbbtc +2-3 w: wmltwwj +5-9 s: sscrspfvspssj +9-17 g: gdggghjmggsggggfgj +12-15 w: wwwwwwwwwwwfcww +1-7 x: zfgmlxxxxbcsfxxclh +5-6 p: ctslhnhphlmpppz +8-13 s: sssqrsqtsssmsssss +1-7 v: vjvvcrk +9-10 k: kkkwjkrwkkkrxkkvhkf +16-17 j: jjjjjjjjjjjjjbjvcj +6-9 r: rvvrrrrqrr +11-12 x: xwxnrxxxmzxx +1-3 q: vqqgq +4-6 g: gbgxsbprgzg +3-4 x: xxxxx +4-12 z: xjpzjzkvzzrzwz +5-7 j: qhhjmjvjv +1-6 b: bfgmbbt +5-16 t: tttctthtttptttttttt +3-5 g: gggwg +3-4 t: ztpxt +3-6 k: dkkkkk +14-15 r: rrrrjvrrrrrrrcfr +6-10 f: gvtmdfqrhft +1-5 h: wpqss +14-16 l: lllzlllblllllrllllx +5-6 k: kkkgdlc +2-6 j: mjdjlrqjjjjszqzbbv +4-13 b: bbbgbbbblbbbn +10-11 v: vvvcvvvjvhrv +3-5 w: rqffzwzdgxwjmlk +3-8 w: xwjqmpvw +3-5 q: zfqsqqxqv +3-17 f: fskfffnfjszfffwfzfcf +9-13 l: qkllllslvwpkmnlfzlll +2-3 h: hhhh +9-16 d: dddddddjdrdcddzgdd +1-3 w: wwkw +4-8 f: fkfscjff +10-12 p: hsrpgppjmpbmmv +6-11 q: pzqqdqqqnqqqtqgqsqsq +2-6 k: dkkfsxzmnckggm +4-7 d: qddpsdddddr +3-5 j: ljnhn +4-5 m: mmmmjmm +4-6 h: zhhhhq +3-5 c: ccccc +4-12 j: jjjcjjjvxjjnvjqj +6-13 d: zdwddvmddwddgp +6-7 m: mmmmmmx +5-8 t: ktwfntjtgmvpttfx +11-17 z: vzzzzzzzzzbzzzzzlz +5-6 f: ffffrc +9-20 v: vvvvvvvvvvvvvvvvvvvg +8-12 v: vvvvvvvvvvvvvvvv +14-17 s: sssssssssssssssss +5-10 x: xxnxwxxxxxqskxwgpz +10-11 j: jjkmjwjbsjsjjjjjjp +2-4 v: qzsmvvv +14-18 x: xdxxxxxxfxxxdvxxxqx +13-18 w: wwmwwwwwdwhwwxpwbw +5-8 k: kkkklknlk +2-3 z: zqzz +8-13 w: dxrbwrzwtvngwwvzr +5-14 j: djjjjjsdvcjjjjtgjrjj +10-14 l: lllllllllllllm +17-19 f: fffxpfffffffcfffffnf +4-6 w: wwwcfnsw +3-16 k: kktndqkrcfnwtkkk +4-8 t: tpttmtht +1-2 l: lllwf +4-9 x: xxxxxxdxxmxc +2-6 c: cgqqbf +5-9 p: tpppdpppzfqlfph +2-5 s: lskss +2-6 b: fxbhhzhb +4-11 h: frhhbknrmrhv +2-4 w: wwjzvs +6-7 d: ddddddr +5-14 c: rbgcpfccppccncrsc +12-17 j: jjmpjjjjjhtcjhzjp +9-12 g: gggggggsgtgggggggg +11-14 b: bbbbnbbbsbbbbvblb +2-4 q: qqqqq +7-10 d: ddfdddddcddmmd +19-20 w: wwwwwwwwwwwwwxwwwwkw +6-7 j: jbjjjqc +5-12 m: mmmmgmgmmjcxpjm +4-8 d: rdddjdljdrd +1-4 d: tdgds +1-3 s: ssszvs +7-8 g: gvgggggggggg +5-9 b: bbwbbbbmbwb +4-13 m: lmwmbmqvzxjhmlp +4-12 j: thjjjfjjjjjjjj +3-4 l: llkk +7-9 v: vvvvvvvvdd +13-15 b: bbbbbbbbbbwtbtmbwqb +3-9 d: dddddzddd +4-9 p: pfpvppppj +4-8 g: kgpgbgggmngxggwfh +4-7 f: fffffff +7-9 r: wrrrrrrrrlrgtr +18-19 s: wssssssssssssmsssvds +16-20 n: nnnnfnnnnnnnnqnznnnn +3-4 s: sssc +12-14 h: hhhhhhhthhhhlhh +10-14 c: ccrccccdcccmcccbcc +2-3 m: tdvlm +2-5 z: zdzzh +11-13 m: mjmmxmwjmjmmmmmcmmvm +7-8 f: mfffffffgbtsffdvvfl +2-3 g: gggqh +7-14 t: tttttttttttttttt +2-10 l: lcllmcnllpvtlgll +2-4 s: scqskss +4-18 l: ncqqmclxshsfkcljlll +4-14 l: qbklhcmthmllfl +3-5 t: jrgztqxsctnz +11-18 t: tttbttstxqttrrtmtt +7-8 n: nvnndthznnq +14-16 n: pnnfzdzwnscvnfnn +2-8 l: vxnkllwltllllt +13-15 q: qqqqqqdqzqsbqqgqqq +4-5 f: ffflflff +1-4 z: nzzz +4-8 r: chrrrrvrsm +3-4 f: ffff +1-7 n: mnnnnngp +2-3 h: hwxh +10-16 s: sssrssgssmsszsrrps +6-7 s: mmzwdpv +10-14 r: rrrrzrzcrvrbrzllrk +9-11 k: kkbjfbhkkglwx +3-4 f: ddrwzgcmnfxfbffpdgbh +3-10 s: qssqszxqpskrwcxsss +7-11 f: fcccqmkfxfdhznwb +10-15 c: ctccncccccdccccxcwcc +3-6 j: vjzmjjr +9-13 d: ddtkddlkddddbdttr +11-19 f: krfxmnqfhfqfksfzrgfm +4-5 x: xxxxr +13-14 p: pppppppppprpdj +5-6 x: xbnxxxxx +15-16 l: lllllllgllllllsl +3-5 s: sxrcsm +12-15 m: nfdmhmkqpgcmnxmqcvn +1-7 q: qrrhxlq +3-4 l: nlllwlmlf +5-6 f: vffffff +6-10 g: gggggvgngfgg +4-14 s: sdgsssgqlqwjszkcgsz +4-6 t: tttvtx +4-7 g: qkggvgggwgfgfgn +6-11 h: hfdzhwmhwhhhgvx +10-15 g: ggggnrgggggflggg +7-8 v: vvvvvvcvvvv +3-4 q: qqqqq +3-6 t: qsdptbvtjhcjvjntwdnx +12-13 c: cccccccccccsx +2-9 h: hhhhhhxhnh +14-15 h: hhhhhhhhhhhhqhksd +18-20 d: dndzzcdgldkmjdvvdddz +4-5 k: kkkkts +4-5 z: zjzzwwz +2-3 z: bpxzxchzzzz +5-12 k: kkkkkkkkkqkc +5-11 k: kkqkkkbkkkwkkk +3-5 c: cgfccgc +3-4 t: jthdftcsfqt +7-9 x: xxxxxxxxxkxxxxxxznxb +1-6 z: xwzkzz +13-15 j: jjjjjjjjjjjjrhj +4-6 q: qqqjzq +5-6 k: kkkkrqg +2-6 s: gffhkvzs +4-6 k: ctdqjk +4-7 v: vcvhvtr +7-19 d: rxddghsddsrpdxxdddd +5-7 r: frlkptm +2-3 b: bbhbzgvd +11-12 h: phhhhhhhhhhkhg +6-8 c: dbsgwppccnwf +8-9 m: mmmgmlpvgdmmdnm +12-19 k: kkzkkkfkkkktzkkkkkbs +1-3 j: mjjjj +4-5 h: hpzhhhvrtdrqd +2-4 m: mmmjmmd +7-8 k: kkkkkkmk +7-8 q: qqwqqqqq +9-12 q: kfqqqqqxlqgbrvqvqwq +2-8 p: dhkfkvqp +3-5 h: hhhhh +2-7 t: rtvqwkqdpjcfttvntpm +2-8 k: kkkcjczlblwgm +3-6 q: qqcqqb +4-5 z: xzzqzzz +1-8 v: vvvvxvccnvv +2-6 n: nnjnctjqnj +15-16 v: vvvtvvvvvvvvvvqv +10-14 r: rrrtrrsrrrqrrr +3-10 d: qcddgpncddwdnldjzd +5-10 n: nnnnztnjnn +6-7 s: ssssjkstsh +2-5 r: crhvhfrlfbzmcqsxcr +5-9 h: hhhlbhqhljmhh +1-2 t: txvt +2-7 k: kkvpkqlpkknkkhmb +7-10 r: rrkrrrrrrr +17-18 z: zwzzzzzzzmzzzzzzdsz +13-17 g: sgvggggbggggqbggfggg +12-14 l: lnllldllllnllxlllll +10-11 j: jjjjjjjjjcj +3-8 p: vppjpkppx +19-20 s: ssppfsswtssqssxlbsls +4-6 j: xjjsjc +7-11 g: gggsgglsgpf +14-15 m: mmmmmmmmmmmmmmm +2-6 x: rxjvbxrxxcsthxl +12-19 s: sgssssqjssssvhssscts +1-8 w: wwvwrwfwlwww +10-12 q: qqqqnqqqqtqq +13-14 j: jjjjjjjjjjjjpr +2-6 j: zjjsljzdppjhjrq +1-3 k: tkgl +10-11 p: npwhgtcgwpptxnpztxn +1-4 m: mdmj +6-7 p: pgppptp +15-16 r: rrmfrrrrrrrrzrdsgrrc +9-10 b: cbbbtbbbdqsb +11-12 w: swwwrwwwwwwwwwlwl +1-4 c: xdfp +2-4 m: mmmb +9-10 b: bbbbbhbbbb +3-4 k: rxtk +5-7 x: xxxldxxxx +1-6 h: hhhhhwhh +3-4 d: ddsz +4-7 f: ftfffffjmmhz +5-7 n: fvpfwnn +8-10 s: sssssssksc +2-11 j: jkjjjsjdbjzljcpjjmj +12-13 r: rrrrrrrrrrrqz +4-11 d: tngdgqrdddtvgdq +6-7 g: gggggtz +4-13 g: lgqkgpfgklggxznk +7-8 j: jjdjljjjghnjmbqjb +1-4 p: pgnpjtbzdlh +13-16 p: ppppwnpcpppwppprp +13-16 s: ssssssssssssssshss +5-6 k: kkkhkjfbbkxh +6-18 b: djrsdpkhrnfkmgkxqb +3-5 c: ccbgp +1-16 m: mmzmlmmqmbwmmmmm +5-6 n: vqtnnk +11-16 x: xxxxxxpnxxxxhxvxh +2-5 q: mqqsq +4-5 p: xlpppp +3-5 v: vwvvvqwv +7-11 b: bbbbmwhfbjb +1-9 l: spnvxwwlmcmpd +2-3 c: cccm +5-12 t: gpcttsvjnqkt +8-10 r: rrrrrxrbrr +8-9 t: zpsltttvv +6-15 w: wwwkvwwwwswwwwwwww +13-16 t: fttgrdcdttttnttttdtt +14-16 n: nnnnzhnnnnnnnrnrnnn +3-10 c: ncccvmmcccxkrrcspjc +8-12 b: tmkmhnhblmhbxdvqb +2-5 w: wwnww +3-4 x: vgfwxx +2-3 l: lwkl +7-10 v: vvvvvvvhvvv +15-20 j: jjjjjjjrjjfjjjjjjjjj +9-10 c: ccqrkcccpcckc +3-5 c: clcccc +3-4 v: fwhvvv +14-16 g: ggggggggggggrgggg +5-9 z: zzzzrzzzzzz +6-7 v: vvvvvkv +8-9 p: ppjpppppp +6-7 v: hvvvvwpv +2-4 l: hlllgdxltwllwn +12-13 r: rrrrrrrrrbrrdrrr +2-6 n: vwbttnnnnsnbnhnnnm +1-12 g: xkxgggggsgggggdgg +1-5 s: sssss +5-19 d: qvddqzdddddddsxpdgdd +4-5 g: tgfpgksglmcg +6-7 b: cpbgbkq +9-13 l: llllllllflllsll +1-8 k: vvdsktqkfkdqlhbwrkqc +11-15 b: qbbbhjbgnbbzvbk +10-12 f: ffffffffffft +5-7 p: fndppppdnpp +3-4 t: xttt +9-12 l: lfvclqlrlllvllzl +5-9 h: mhdjxshhhzlp +2-4 t: tttt +3-7 c: wdccccccdgscgcq +8-16 b: sqbbbbbbbbbblbbgbbxp +6-9 n: nnnnnqndv +5-6 j: vwktnjjdhjsvndjjjsfj +7-9 w: lwvwjwwwwwww +2-3 c: bdrc +3-4 h: hhhh +8-16 j: fgnjtlhjjgknmbbj +3-4 f: ffpd +8-12 h: hhhhhhhchhhnhhhhh +8-14 w: zwxrgcbjbqwghhbwwb +6-9 c: wchcccccccccccc +6-10 f: fwfffcdfffsf +1-12 c: kccccccccccccc +8-10 t: dmtjzvjttxttrtftt +4-5 s: ssbnbss +3-4 q: qqdd +5-8 q: cgcjjbtq +12-15 b: hjjqbxwbnbbbwbfl +6-10 s: sfsfqnsfslsfssssst +4-10 b: tbgbjnqbbbtcbb +2-7 c: cmctjltcz +1-5 j: jjkjjqdjjjjpjjjjjj +16-17 j: jtjjjjjjjjjjjjjjs +2-19 n: njnnnnnnnwnnnnnnnnk +8-11 v: vvvvqvjnvvgmvvtv +11-15 z: zzzgzzzzzzzgzzz +3-5 r: rxrrt +3-12 m: llmntmzdjnhmcbmm +8-9 s: ssssssspws +6-9 v: vvvvvgvvv +2-7 k: kkkkkpk +12-16 v: vfvvvvvmvrvzvvzvvv +2-12 k: shkkkjtxkkklkkkk +4-5 t: ttttvt +4-6 k: lczkck +3-11 d: ddpddsddmddddd +7-12 p: vnrftmwdphrzxjv +2-4 z: zlzqh +16-17 q: qqqhqqqqqqqqqqqqqqq +5-9 r: rrrcrgrflqh +4-5 l: xllcv +8-11 h: hhhhhhhhhhhh +16-17 l: tfhpllgsrlvlbvncl +15-16 z: zrzzkzbzszdzzzzczzzz +11-12 v: vvvvpvqvvvvvvjv +12-16 w: wwwrwwmwwwwwwwww +7-8 m: mmmgmmnpm +2-8 c: cscccccbc +4-6 l: slrklplgsl +7-10 c: qpljmtcclfqc +16-17 s: gjssssrhksfmdssssw +1-4 r: krrz +3-4 g: gjgggdgpwd +11-13 l: llllllllllvlm +10-11 z: zzzzkzzzzzs +5-10 l: llllmlljlb +9-10 j: jjjjjjjjstbj +3-7 n: ndnvmnjl +2-10 x: pxdcdsxdsxjmx +11-12 g: ggggsgggggxkp +8-12 s: sssncsjspkxssssshs +9-11 d: ddddddddddc +3-5 x: xmxxxxxx +1-5 j: vnqpwg +4-5 k: lrqkkkqf +1-7 z: gwzdzzhzzzzzz +2-4 r: nrvvxsbrhghrrtr +3-4 x: xkxx +7-13 b: bpbbbnbbrbbbh +6-10 t: tttttttttttt +13-14 n: zgpqjvrsbsfgnn +8-9 x: xxxxxxxxx +6-7 c: xccwxqcscczcc +2-9 x: dxxxxbxxx +2-3 c: lcwrncsjwzss +16-18 g: bjkzbdrfjsnbldggwrqj +6-7 l: lllllshl +7-8 x: cvtxzlxxvls +8-11 q: qtwqqqcbqqhqz +7-11 n: nngqrnnnnnhnj +4-5 q: qqqqq +5-6 c: cgcccfj +15-16 z: zzzzzzzzzzzzzzzz +7-16 c: cblsccjzgccccccvcc +4-7 k: rkkkkkk +11-12 q: qnrqlqqqqqqcqqq +4-5 f: ffzcl +14-18 m: mjmmrmmmmmmmmtmmmd +7-9 f: fffbffffg +5-11 l: lslqdpbvslplll +2-4 s: brkfmk +10-11 c: cccccccccmc +2-5 z: zzzzh +1-11 h: hhhhhhhhhhhhh +2-5 z: zgzwlz +3-5 r: rrrrg +14-15 r: rrrrrrrrrrrrzbj +1-7 q: jppwfcqmvxjqxdf +2-4 m: bmmh +12-15 m: mmmcmmmsmmmqgmm +5-13 b: bbbvbfbbdbbhb +1-13 g: cgggggggggggv +3-9 s: bgldhnxsksznscnlnhc +6-7 t: tbvtbtkjt +8-9 q: klqpmdtqqcmlnftrn +8-10 f: fffffvflgfq +10-14 f: tcpfzmffffbffvpfff +1-5 h: dhrhjd +3-4 z: zbztzgfbcf +14-18 v: vvvvvvvvvvvvvvvvvv +18-19 h: hhhhhhhhhhhhhhhhhhh +1-4 q: vdqgqwhg +6-15 g: ggggggfggbsplggggh +1-4 s: srstdtspcrqqgqsl +10-19 x: xxxxxxjtxxwxmqswxxx +3-5 s: mjdsssssssssmss +6-10 q: qkqqqpqfxq +14-18 f: fffftmfffdfffftfff +5-6 n: qnrsvnvrnnn +4-5 x: xxxfp +8-10 m: mbmmmmklmw +2-4 n: nvntn +4-5 t: ttttt +6-8 t: jdlgtttpq +4-15 h: hhhhhhhhhnhhhhthhhhh +1-7 h: wpltchhcxwhkg +1-3 j: jjjjj +7-10 t: ttchcttwvtttftrtt +3-7 q: tsvrqqmdlzxs +6-9 x: sxjxxxxxx +13-15 b: bjbbbwbbbbbbdbbbbb +15-16 j: jjjjjjjjjjjjjjjp +5-9 k: rkkkkdtkmkjkdr +6-8 x: xxxxxxxx +7-8 p: ppgpppppblrp +1-2 q: qkqqqqq +3-6 j: jjjjjz +9-15 k: kckkkktskrpkkqkwklvk +5-9 b: bltqmxbsbbvdpvsqkpk +14-15 c: cccccccccccccgzc +10-13 l: mzlhlltlllllrcl +2-10 m: mmmmbqrmqmhmqm +4-5 g: gglglx +1-7 h: hdhlhhfhh +2-12 z: hnzdxfzxpwzzz +12-13 d: ddvddfddjdddmqvdkdmr +12-16 g: ggggngrxhgghgggggtgg +12-14 w: tkwdwwbtqwzphmzklrwk +4-5 c: cmccbcg +3-12 t: ttfxjgttsntkxznct +3-6 t: xjbhzxtttb +7-8 k: kkkkkkxf +2-4 p: pfppp +4-13 l: lllcllllllllllllllll +11-13 j: jmjvjjjjjjgjw +7-11 s: sssssswsssrmb +4-10 f: fffxfqtffff +10-12 p: pppppppppdpd +3-7 n: znfdhbn +2-3 w: wwwrwsw +2-6 n: mxnnfnx +5-7 c: cccpcchcsmlhc +1-5 j: jjtnj +2-4 d: ngtbkhcdwgd +1-4 t: txctqzq +5-10 h: hhnhhghstmtcq +4-7 x: xpzrmmjxxnxlxxx +14-17 c: ncccccckccccccccqc +17-19 s: mssssssslsssssssjsq +8-10 d: dddddddkdr +2-4 d: xcdn +2-4 w: wwwgw +3-15 x: klxxxslhpzwvfbxxlx +6-9 z: qtzhzgvzfzkgzzsfz +4-7 x: xhxxrmx +2-7 k: kkknkknkjk +2-4 r: zrcwpcrfm +3-20 v: vpvwnvrtvbvkdvnvvhrd +4-9 d: gsdhddtjdjg +3-7 s: sgsnshspt +10-12 g: ggxgghbgzxztg +2-8 l: fkxzlkdlmlllnwhlt +2-5 t: tttttt +6-8 b: bbbbbbbbbb +1-3 p: fpmp +1-7 w: llvwjdjvtp +2-7 x: rmbftbcmcxxxxpttzjwb +3-7 m: mmkmmrdmh +6-8 c: cccccccc +9-11 j: jjjjjjjjwnvjkxj +17-18 q: qqqqqqqqqqqqqqqqcx +4-6 z: zzhzzlg +17-20 f: ffffffmffffffffffxff +11-16 k: kkkkckkkkkkktkknkkk +10-12 k: kkkkkkkjkzkk +10-12 l: lllllllllplt +5-12 n: xnnhkdpmnjnzqnc +3-9 f: jmhkffdhsdsf +6-9 m: bzmppmqjdmhmgmmdm +8-9 h: hhhhhhhhl +4-8 r: rrrmrrrz +7-14 x: xxxpxxxxxxxxcn +4-18 v: hvvvvjqvvvqvtjmvfvvf +9-10 x: xxxxxxxxxj +2-8 m: rttmqfkvjgq +4-6 v: bjtvvv +2-4 k: kkkk +5-6 p: ppppxc +2-5 p: jhxcptzrpfsrxj +11-15 c: cccccwcxcccckccccccc +12-16 w: pgwllwwwwwwwvtwwww +11-13 m: mmmmmlmmmmmdmm +12-16 t: tltmtttwzjtssmtt +6-11 k: spgkkxpmtkbdkmzn +10-19 m: lrzzlvfncmpplqbmxhh +8-15 t: tttttttvttttttjttt +17-18 w: wwwwwwjwwwwwwwwwfj +14-18 l: bscmdvlczsgljvlbllwp +5-12 t: tdtslpttttvttgtkkt +1-5 s: pvqqhnpvcmxrwsspvnw +13-17 j: jjxjjvnjjjjjhjdjpjpj +6-8 f: jxlfvnrwt +8-11 q: dcqqmnqqzqqqqqqqq +3-4 r: rrrj +8-9 z: zffzzzzxzzz +8-9 c: cchccccwc +3-15 l: dpxfgtznlgmptjlxhzl +2-9 f: sfprndvdptlfdwh +13-14 z: zzzzzzzzttzzzzzz +16-17 l: llllllllllllllllrl +2-3 c: cxrwvncfl +3-5 f: flhbfkbfmf +3-5 s: hdkshswvlmg +3-7 l: llcllllllll +14-17 l: llllllllllllldllcll +3-4 l: klzl +4-12 r: rrrcvrrrrwrr +8-9 m: mmmmmzmmmmm +5-10 m: bqhbgmpmmhmwhmmm +10-11 h: xhhhhhhjhghh +3-4 p: hpbpppnxppk +9-10 z: bnzjzzzzzz +2-8 d: pzdrzhdddpd +14-15 f: ffffjffffztfffzff +3-13 b: bbbbbbbxbqbbf +8-17 p: fppppbppjpfpppzcnp +6-9 w: wwjwmtwwfjs +4-8 q: qqqltrkqzqqxqc +17-18 g: gggggggggggwggggtfg +14-16 k: kkkkkkkmkkkkkkkk +11-16 v: vvbvvvhvvvvrvvvv +4-5 z: zztzz +3-8 q: qpnqjptfrqxtdncqbg +9-13 v: nvmzrnvvvqvvvgvvvtvv +1-6 k: kvxbkvmdmgdmkhkwq +2-4 v: fpvvpv +4-5 x: cdxxx +3-4 j: jkjj +4-9 s: dslxngsjssxpsssgss +3-10 l: rszlllgzbvlll +5-6 z: zmzjznzkxzr +10-11 x: xjxxxsxxxfxx +11-13 x: xxjxqxxxpxwqxxxx +4-7 d: drkkhrd +15-17 f: sfsffffffffffffxnfff +6-16 m: mmrmlzdmzxnpmhmhmmfm +2-4 h: vhthh +17-18 q: qqqqqqqqqqqqqqqqqq +2-7 h: hhhhhhh +8-14 b: lbdvsxcbzvfltl +10-13 g: ggggggqgxphggcg +10-11 c: ccccxccccbc +1-10 f: pmtffffjfgkfpjm +14-18 k: wkskkkkkkkkkkkkkkn +5-8 n: qknnnfgn +6-8 l: lxlllklll +2-3 b: bmzb +3-13 n: nvpnrnjnnnqnnmnhlnx +1-4 t: rrjg +1-2 b: rkpbg +14-19 g: zcggccgvgpjghznmvgpg +5-6 j: jjjjjj +12-15 x: pxxxxxxxxxfbxxx +3-11 m: hmcmtmqmxcmm +2-4 h: wshlhh +2-3 b: gbzzqdvhpbvfgh +6-7 d: jdddfppddvdmds +16-17 k: kkfkkkkkkkkhkkkkp +6-15 k: nqkkkhkkkkkhkkkkkzkk +4-5 j: jtwsspjj +7-8 g: mrggggfg +5-11 r: wrrrdprrrrn +3-8 c: ccccccct +1-3 s: ssss +8-9 r: rrrrrrnjdr +7-10 v: vvcvvvcvfzn +2-4 b: bzplb +5-7 w: wwwwhwtw +9-10 b: bnphxrvfbjx +2-10 p: ppjppppplpp +3-17 m: mmmmmmmmmmmmmmmmg +4-7 b: bstmbbbbbmgtqm +9-11 q: sblqqbqqglfqlqfzqqld +16-18 v: vvvvdvvvvvvvvvvlvm +7-10 v: rpvvnzpcccvvhvbvvtz +7-9 m: mmmmmmmmm +9-12 g: gggglggjgggggg +2-4 d: ndhdsddzq +8-10 q: qczgcdqbqlqlzqq +4-8 c: pknvllcbxxcs +5-6 k: xpkkkk +3-6 q: qrdqcqqqq +7-8 r: rrgrrrrr +2-3 n: vntn +4-5 r: rrkrr +2-3 c: kcgcrbcqk +2-4 r: hrmrtrs +6-7 s: gsvwsjsgssbss +1-2 n: nkwj +4-12 k: kkkqkkkknknv +17-19 k: kkkkkkkkkkkkkkdkkkhk +8-9 p: ppppjvwlpd +2-7 s: dshmwzsspls +6-7 b: wbbbbbx +1-4 w: lwnwj +3-7 f: fffkfffnkdff +2-4 l: xlwsrlclpql +1-4 w: wwwv +17-18 r: sxrnvrtswzzzwwrdrt +8-11 q: qqqqqqqqqqkqq +1-9 c: gscmdrvngstmfknsjrp +14-15 n: nnnnnnnnnnnnnnn +15-16 n: nnnnnnfnnnhnnnnnn +4-6 w: fpbwwwwcwprflnjtwl +10-12 p: pgpprmwwczxjhpvpqmpp +2-14 c: wkdjtjxccwvzwbgr +4-6 t: ttthtn +7-8 s: ssssspgsqs +13-16 t: tdttqxtttttttttm +2-3 s: wsfdwh +2-3 z: qzbr +4-5 t: htkntst +2-10 g: qgpbkxdpggfglbpvn +11-13 k: kkkkkkkkkkkkk +5-10 v: vrvfvfvvwnvs +1-10 t: bsptvbqtctmwtztgtwt +1-6 g: hzcpck +9-15 g: zggnmghgggrggxqzj +2-7 z: czzzkzzzrz +1-4 f: zmnffhprzvrbhz +1-3 j: zjmjjjj +4-6 n: nnnnnnnnnnnxnnnnn +6-7 v: vvvvvpz +15-19 r: rrfrrrnrrrrrrrrrrrr +4-11 v: vvmzvvvpvvxk +3-4 x: xxxx +5-6 k: kllvds +10-14 r: rzrnvtrfkrrrvjrr +2-6 b: frbbbtvb +3-5 g: tpgwjrr +16-18 c: tcccccccctccccctcccc +5-14 g: tggjggggggggggmgz +3-5 c: qjfndkck +19-20 v: vvvvvvnvvvvvvvvvvvvg +7-11 x: xxxxvxxxqxf +16-20 v: vzvhjvbvvtvvvvvvvgvh +5-6 h: hhbhhh +1-2 d: dxbd +1-18 r: rvzjrgfrkrxrgbrdlrr +6-9 x: xgxdlxrgnfmsmfxcwx +2-15 h: whxfjxtcxlwxchb +1-3 w: tcvttwhsjpzd +8-10 l: qlrjglllxl +8-11 q: kggqvqbvwfbqlv +2-4 d: dsdwhnj +9-10 s: sssssssscrsz +2-9 l: klgblptpqzdp +11-14 q: qqqqqkrdqxjfqcqpqqqs +8-11 k: dvhvwdpkbdnwn +3-15 c: mcvccvccccccccd +3-5 d: dmqddv +2-7 p: npnfpswbhsbgknmvlgmx +2-5 f: hffrfm +11-12 b: nbbbhbbbgbhbbglqbbm +1-4 g: rgfg +3-6 z: zzzzzhcz +1-5 n: bzvxn +10-11 l: lllllllllqrmllkllvl +14-15 j: jjjjjjjjjjjjjbw +1-8 f: fffffsngffczj +4-9 n: zswmtrnlspnxdnbnbvln +6-8 c: jjcxcjnccclc +2-4 v: rvpvsvfft +1-5 x: xxdxkxxxxgx +7-11 f: nfqdgffmwlfc +1-7 n: nttvqnn +2-4 x: xxqxx +4-8 t: rttttttt +4-5 r: ktkwwzcrv +5-9 s: sfsslssss +1-15 p: splppplppprppcppppdp +3-6 l: xllhplwhllllzqbkll +3-4 g: ggsgq +19-20 w: wwwwwwwwwwwcwwwwwwqk +11-12 m: mmmmbmmmmmmm +10-13 c: cccmccccccccpcwcc +1-6 r: xrrrrprfl +3-4 w: hwww +5-7 s: zwldstwxsh +5-8 f: zhfglzmkfnqmbbtffftf +5-11 x: cxxzvxglxrbbqqcxf +11-13 b: bbbbbbbbbbbbdbbbb +1-6 d: qddddd +7-8 k: kkkkkkkb +14-15 d: ddddddfdddddddj +12-16 m: mmmdmmmmmmwpmmmlm +3-9 m: mtmxsdmmzsmlc +3-7 q: qjxlgqd +2-4 c: wccb +8-10 h: hhhhhhhkhc +2-4 s: jjlm +5-7 z: gzzzzzzjz +1-4 s: sqss +1-2 s: ssst +1-2 f: kfhf +4-6 b: bbtrbbbb +3-4 r: grrrr +1-7 r: lrpcfdfksxrh +9-10 v: vvvvvvvvhw +7-9 k: kkkkckkkck +9-12 h: hhhhhhwhthhhh +3-4 b: bdvbdwrgcbpwblj +6-8 v: vwqcvvvvvvsvvxjv +1-3 s: ssss +13-15 x: xnxxxxkxpxxxtxwx +1-3 j: jqjj +3-6 l: vlljlbllrbztnl +4-7 n: nnnsnnnnnnnnnnrnn +1-5 z: zzzvzzz +3-4 m: qmmjmm +7-9 m: gmmrtzmmrmmcmm +5-16 x: xzxpxxxxjxqxxqms +10-11 m: mmzrmmmmmmmmm +3-5 p: cpprxp +3-4 h: hhhjq +6-7 x: xxxlqwlxxvnnvvc +15-17 s: sssbsssscsssfssspsg +11-13 s: ssssssssgsssss +3-7 f: frfshbfn +4-6 n: tnnnpnn +7-10 g: ggggggfggg +6-7 j: jjzjthj +11-14 m: mmmmmmmmmmmmmmmkmmm +12-18 c: ccccccccftccccccccc +2-10 w: wvwwwwwwwwf +1-6 q: zvqqqmzqqt +13-19 f: ffffffffffffgfffffnf +5-11 x: lfxzxxcxxxxlbwnrx +2-3 s: vxgv +1-5 p: zpppxbmj +6-14 c: cpcccgcddfzcgcccc +3-5 q: qqqqvpqq +8-9 f: fffffffff +7-10 m: xmxmmwtmmmnvcrmkrmmm +2-4 v: vvjnrxnvtdmm +5-8 k: kkqkkkkkk +7-17 n: mqhnbwxnnnmcdlkfq +18-19 m: mmmmmmmmmmmmmmmmmmm +5-6 r: rrcrvmr +2-7 b: fdbvbdb diff --git a/2021/01/count_larger-02.py b/2021/01/count_larger-02.py new file mode 100755 index 0000000..549dba9 --- /dev/null +++ b/2021/01/count_larger-02.py @@ -0,0 +1,40 @@ +#!/usr/bin/python3 + +from sys import exit + +larger = 0 +current = -1 + +three = [] +counter = 1 + +zahlen = [] + +with open('input.txt', 'r') as myfile: + # create a list from all lines + for lines in myfile: + zahlen.append(int(lines.strip())) + + laenge = len(zahlen) + for i in range(laenge): + # stop it, if end of list is reached + if i + 2 >= laenge: + break + + csum = zahlen[i] + zahlen[i+1] + zahlen[i+2] + print('{} :: {} + {} + {} = {}'.format(i, zahlen[i],zahlen[i+1],zahlen[i+2], csum)) + three.append(csum) + + +for item in three: + if current > -1: + if item > current: + print ('current: {} < {}'.format(current, item)) + larger = larger + 1 + + current = item + + +print('{} measurements are larger than the previous measurement'.format(larger)) +exit + diff --git a/2021/01/count_larger.py b/2021/01/count_larger.py new file mode 100755 index 0000000..e1741f9 --- /dev/null +++ b/2021/01/count_larger.py @@ -0,0 +1,19 @@ +#!/usr/bin/python3 + + +larger = 0 +current = -1 + +with open('input.txt', 'r') as myfile: + for line in myfile: + if int(line.strip()) < current: + print('{} is smaller as {}'.format(line.strip(), current)) + current = int(line.strip()) + else: + print('{} is larger as {}'.format(line.strip(), current)) + larger = larger + 1 + current = int(line.strip()) + + +print('{} measurements are larger than the previous measurement'.format(larger - 1)) + diff --git a/2021/01/input.txt b/2021/01/input.txt new file mode 100644 index 0000000..6fc8a6c --- /dev/null +++ b/2021/01/input.txt @@ -0,0 +1,2000 @@ +171 +154 +155 +170 +167 +170 +176 +170 +172 +171 +158 +161 +162 +168 +180 +179 +178 +181 +178 +179 +170 +160 +155 +154 +147 +145 +139 +169 +170 +169 +168 +166 +157 +142 +140 +154 +148 +146 +149 +158 +175 +182 +176 +178 +177 +175 +174 +175 +170 +167 +175 +165 +191 +192 +195 +201 +200 +199 +222 +221 +222 +250 +254 +258 +281 +282 +275 +276 +267 +293 +309 +300 +318 +326 +318 +335 +342 +343 +336 +348 +362 +363 +360 +368 +369 +352 +355 +338 +337 +333 +337 +350 +379 +357 +362 +353 +367 +366 +355 +357 +368 +333 +337 +341 +337 +338 +334 +339 +340 +338 +347 +351 +354 +353 +352 +354 +351 +343 +344 +351 +347 +341 +348 +361 +372 +383 +386 +385 +386 +384 +383 +373 +376 +375 +361 +353 +357 +358 +350 +349 +351 +343 +346 +330 +359 +347 +354 +351 +338 +339 +335 +333 +332 +338 +340 +338 +337 +329 +328 +334 +312 +295 +307 +313 +315 +316 +319 +314 +317 +314 +311 +303 +304 +300 +299 +301 +313 +311 +294 +297 +299 +304 +307 +308 +310 +302 +304 +310 +313 +308 +310 +303 +302 +294 +280 +284 +283 +287 +280 +286 +287 +288 +289 +282 +281 +280 +275 +276 +275 +265 +263 +260 +262 +266 +267 +284 +303 +316 +317 +304 +305 +304 +288 +289 +294 +293 +290 +291 +289 +290 +286 +285 +298 +292 +295 +296 +300 +298 +300 +299 +306 +310 +305 +300 +313 +318 +320 +323 +310 +308 +306 +307 +306 +334 +309 +308 +310 +314 +296 +290 +291 +297 +303 +305 +310 +311 +321 +312 +317 +310 +307 +306 +308 +301 +299 +292 +291 +294 +293 +302 +309 +296 +291 +286 +295 +296 +316 +301 +302 +303 +301 +317 +318 +328 +326 +352 +359 +358 +357 +348 +346 +348 +383 +372 +375 +372 +380 +379 +378 +379 +376 +378 +383 +373 +365 +366 +368 +369 +372 +398 +409 +392 +389 +388 +389 +407 +398 +422 +408 +411 +429 +430 +445 +449 +451 +449 +471 +472 +473 +481 +478 +494 +516 +520 +518 +526 +525 +527 +541 +542 +544 +542 +515 +516 +521 +523 +543 +542 +544 +543 +544 +546 +535 +538 +522 +512 +489 +486 +479 +460 +459 +452 +447 +448 +454 +459 +464 +457 +451 +467 +441 +437 +438 +448 +460 +459 +467 +464 +475 +469 +473 +484 +483 +484 +485 +484 +486 +487 +463 +471 +470 +475 +480 +483 +484 +514 +527 +528 +534 +535 +530 +524 +514 +515 +523 +527 +533 +531 +553 +560 +559 +565 +563 +562 +563 +568 +562 +567 +563 +578 +605 +610 +616 +611 +614 +611 +594 +596 +606 +604 +605 +598 +600 +580 +578 +574 +594 +600 +597 +593 +596 +599 +601 +585 +597 +591 +598 +601 +598 +597 +605 +607 +606 +609 +611 +607 +608 +601 +600 +597 +583 +581 +553 +557 +569 +575 +570 +566 +544 +547 +564 +543 +501 +466 +469 +470 +471 +489 +504 +509 +510 +505 +490 +487 +484 +498 +511 +493 +494 +498 +503 +505 +491 +510 +515 +530 +517 +520 +529 +516 +522 +525 +530 +519 +518 +517 +516 +506 +508 +514 +525 +527 +548 +546 +547 +549 +550 +549 +562 +564 +565 +572 +571 +575 +581 +582 +579 +585 +587 +577 +572 +582 +573 +578 +581 +579 +577 +562 +556 +558 +563 +565 +567 +575 +580 +579 +578 +567 +566 +563 +564 +563 +562 +546 +549 +561 +543 +546 +535 +536 +528 +533 +529 +544 +550 +570 +601 +621 +622 +619 +611 +604 +601 +598 +571 +572 +569 +576 +567 +569 +580 +588 +587 +590 +594 +609 +610 +634 +635 +652 +653 +658 +659 +655 +668 +667 +661 +664 +651 +650 +649 +650 +651 +647 +646 +649 +657 +680 +681 +680 +684 +683 +684 +689 +701 +716 +714 +718 +725 +757 +756 +758 +765 +750 +745 +752 +760 +767 +759 +762 +765 +781 +782 +784 +779 +784 +811 +812 +804 +769 +761 +759 +737 +736 +768 +767 +768 +766 +778 +767 +768 +773 +772 +760 +762 +755 +766 +764 +776 +789 +784 +787 +788 +782 +780 +773 +790 +778 +762 +754 +745 +746 +759 +729 +728 +720 +715 +701 +699 +700 +702 +700 +701 +702 +699 +697 +686 +687 +704 +705 +706 +710 +698 +696 +700 +699 +668 +671 +676 +682 +694 +689 +661 +664 +665 +638 +634 +612 +574 +579 +583 +582 +565 +575 +574 +575 +582 +581 +582 +580 +573 +575 +581 +578 +576 +580 +582 +584 +585 +599 +604 +606 +610 +619 +617 +621 +615 +616 +623 +631 +612 +613 +624 +620 +623 +626 +627 +612 +601 +600 +599 +612 +626 +635 +641 +647 +644 +642 +645 +639 +661 +665 +657 +673 +675 +674 +686 +673 +674 +675 +684 +685 +683 +685 +682 +668 +680 +674 +668 +638 +629 +621 +634 +642 +647 +651 +645 +676 +675 +688 +679 +681 +674 +673 +670 +668 +671 +658 +661 +652 +651 +653 +655 +651 +647 +648 +649 +644 +650 +654 +660 +674 +675 +685 +659 +668 +669 +663 +680 +679 +693 +720 +692 +680 +690 +711 +722 +725 +728 +739 +740 +741 +738 +740 +748 +766 +809 +822 +821 +818 +810 +809 +808 +797 +792 +799 +800 +799 +800 +807 +808 +809 +810 +815 +814 +815 +810 +809 +807 +804 +807 +798 +801 +802 +808 +811 +809 +805 +802 +803 +806 +816 +809 +807 +802 +799 +803 +802 +801 +811 +818 +820 +819 +825 +823 +824 +822 +837 +846 +847 +857 +856 +855 +861 +862 +848 +850 +833 +853 +850 +846 +834 +840 +843 +842 +832 +833 +826 +827 +864 +878 +880 +881 +883 +873 +862 +864 +860 +854 +864 +879 +881 +878 +833 +844 +852 +851 +869 +866 +865 +869 +859 +862 +850 +852 +851 +860 +841 +848 +839 +841 +844 +845 +843 +861 +868 +879 +880 +883 +890 +892 +891 +890 +894 +893 +887 +905 +895 +875 +878 +881 +883 +890 +891 +898 +905 +906 +909 +908 +909 +918 +926 +936 +937 +938 +939 +956 +971 +954 +955 +954 +957 +998 +1024 +1023 +1045 +1038 +1051 +1056 +1055 +1045 +1042 +1041 +1042 +1045 +1028 +1002 +1004 +1010 +1011 +1013 +1014 +1018 +1013 +1016 +1018 +1017 +1006 +1004 +1003 +1002 +1001 +1000 +1012 +1036 +1038 +1028 +1027 +1047 +1048 +1030 +1031 +1022 +1023 +989 +976 +967 +964 +963 +968 +966 +962 +969 +971 +972 +971 +972 +962 +968 +970 +986 +987 +1005 +1006 +999 +1001 +1008 +1017 +1018 +1017 +1047 +1051 +1046 +1048 +1049 +1051 +1053 +1051 +1047 +1045 +1029 +1028 +1027 +996 +1000 +1001 +1007 +995 +962 +985 +981 +977 +975 +979 +972 +983 +982 +998 +1029 +1030 +1025 +1028 +1026 +1020 +1021 +1028 +1027 +1011 +1010 +1016 +1032 +1051 +1043 +1028 +1030 +1049 +1057 +1066 +1067 +1062 +1051 +1044 +1035 +1041 +1061 +1074 +1087 +1067 +1069 +1068 +1071 +1060 +1059 +1058 +1036 +1034 +1033 +1032 +1029 +1042 +1032 +1026 +1024 +1027 +1028 +1031 +1032 +1025 +1037 +1042 +1029 +1041 +1036 +1041 +1038 +1011 +1025 +1029 +1030 +1027 +1022 +1048 +1046 +1058 +1057 +1056 +1058 +1050 +1058 +1071 +1067 +1059 +1037 +1047 +1048 +1056 +1070 +1042 +1050 +1051 +1050 +1053 +1054 +1051 +1067 +1069 +1073 +1072 +1058 +1032 +1034 +1041 +1035 +1042 +1053 +1049 +1052 +1063 +1065 +1058 +1061 +1064 +1062 +1065 +1066 +1055 +1045 +1055 +1047 +1049 +1043 +1049 +1057 +1053 +1055 +1057 +1025 +1024 +1025 +1019 +1029 +1023 +1027 +1043 +1045 +1039 +1038 +1039 +1037 +1045 +1046 +1048 +1049 +1054 +1056 +1051 +1054 +1051 +1057 +1073 +1072 +1088 +1079 +1074 +1043 +1044 +1045 +1046 +1044 +1046 +1061 +1063 +1071 +1053 +1061 +1063 +1064 +1058 +1060 +1074 +1075 +1071 +1061 +1055 +1052 +1036 +1037 +1036 +1021 +1014 +1015 +1020 +1011 +1015 +1016 +1017 +1022 +1031 +1036 +1041 +1043 +1026 +1009 +1014 +1028 +1002 +1001 +1020 +1047 +1043 +1012 +1003 +1012 +1015 +1026 +1025 +1014 +1011 +1014 +1015 +1016 +1017 +993 +997 +996 +1000 +996 +997 +981 +986 +979 +996 +995 +994 +1003 +1005 +976 +978 +976 +977 +986 +1007 +1008 +1012 +1013 +1024 +1019 +1013 +1006 +1003 +1005 +982 +983 +985 +984 +987 +962 +960 +959 +945 +944 +941 +944 +941 +942 +943 +949 +947 +922 +915 +921 +924 +922 +921 +924 +948 +945 +937 +943 +944 +965 +968 +952 +945 +944 +955 +960 +961 +958 +938 +934 +936 +937 +931 +942 +941 +938 +933 +934 +948 +944 +942 +945 +944 +949 +952 +955 +954 +931 +932 +933 +955 +954 +955 +959 +968 +966 +967 +981 +980 +970 +973 +978 +979 +981 +982 +983 +987 +989 +992 +997 +1003 +1010 +996 +1004 +974 +978 +983 +974 +986 +983 +987 +985 +992 +991 +990 +988 +1001 +1020 +1036 +1037 +1038 +1026 +1029 +1034 +1026 +1025 +1026 +1017 +1022 +1024 +1025 +1028 +1023 +1025 +1011 +1018 +1015 +1016 +1015 +1018 +1000 +1014 +1012 +1008 +1005 +1026 +1027 +1026 +1028 +1030 +1043 +1049 +1038 +1034 +1019 +1017 +1023 +1019 +1010 +1011 +1024 +1025 +1028 +1019 +1024 +1026 +1025 +1034 +1018 +1016 +1010 +1041 +1062 +1058 +1056 +1054 +1055 +1053 +1052 +1055 +1057 +1058 +1040 +1042 +1022 +1024 +1030 +1029 +1013 +994 +1007 +1008 +1005 +1007 +1004 +1005 +991 +996 +997 +991 +1008 +1012 +1010 +1004 +1008 +1010 +1012 +1013 +1014 +1035 +1024 +1025 +1029 +1026 +1040 +1042 +1038 +1042 +1032 +1039 +1042 +1043 +1046 +1061 +1060 +1077 +1078 +1071 +1062 +1073 +1070 +1071 +1055 +1040 +1032 +1056 +1057 +1035 +1033 +1022 +1020 +1031 +1030 +1031 +1028 +1031 +1032 +1024 +1025 +1026 +1043 +1052 +1046 +1062 +1069 +1083 +1064 +1048 +1036 +1033 +1032 +1033 +1035 +1034 +1023 +1025 +1017 +1013 +1015 +1017 +1039 +1074 +1069 +1064 +1069 +1062 +1057 +1068 +1060 +1059 +1029 +1028 +1019 +1016 +1020 +1019 +1020 +1005 +1003 +1010 +1021 +1010 +994 +990 +983 +990 +1003 +1009 +1024 +1021 +1006 +999 +1005 +997 +999 +1009 +1019 +1017 +1021 +1027 +1032 +1034 +1037 +1043 +1048 +1050 +1083 +1082 +1074 +1072 +1081 +1082 +1093 +1099 +1092 +1094 +1095 +1094 +1104 +1089 +1081 +1085 +1086 +1078 +1082 +1081 +1082 +1079 +1072 +1067 +1080 +1084 +1083 +1085 +1086 +1092 +1090 +1092 +1082 +1084 +1080 +1081 +1088 +1083 +1074 +1065 +1062 +1066 +1059 +1067 +1104 +1107 +1108 +1122 +1134 +1138 +1150 +1149 +1161 +1160 +1159 +1165 +1167 +1168 +1181 +1179 +1176 +1180 +1178 +1163 +1172 +1171 +1172 +1181 +1180 +1179 +1173 +1188 +1192 +1183 +1182 +1184 +1183 +1182 +1155 +1137 +1139 +1141 +1135 +1134 +1133 +1132 +1121 +1125 +1120 +1122 +1123 +1125 +1112 +1114 +1119 +1134 +1131 +1134 +1138 +1115 +1114 +1117 +1118 +1124 +1109 +1103 +1107 +1078 +1091 +1068 +1074 +1071 +1088 +1082 +1088 +1097 +1102 +1101 +1102 +1103 +1100 +1111 +1113 +1099 +1088 +1094 +1095 +1092 +1098 +1104 +1111 +1090 +1088 +1084 +1087 +1096 +1092 +1093 +1092 +1089 +1087 +1081 +1089 +1091 +1089 +1094 +1088 +1082 +1087 +1090 +1094 +1093 +1094 +1102 +1088 +1091 +1075 +1077 +1078 +1088 +1082 +1080 +1078 +1086 +1083 +1092 +1090 +1099 +1084 +1091 +1095 +1097 +1096 +1099 +1102 +1101 +1084 +1082 +1083 +1068 +1076 +1078 +1080 +1068 +1069 +1068 +1105 +1108 +1124 +1123 +1124 +1129 +1130 +1132 +1133 +1158 +1163 +1162 +1167 +1165 +1180 +1178 +1154 +1155 +1143 +1147 +1145 +1161 +1162 +1167 +1192 +1198 +1196 +1204 +1205 +1184 +1185 +1181 +1169 +1177 +1178 +1179 +1159 +1163 +1166 +1169 +1168 +1170 +1176 +1175 +1159 +1161 +1160 +1135 +1133 +1154 +1136 +1137 +1142 +1131 +1146 +1137 +1139 +1148 +1149 +1148 +1147 +1146 +1145 +1131 +1122 +1124 +1122 +1121 +1126 +1130 +1140 +1144 +1147 +1148 +1145 +1148 +1153 +1145 +1129 +1130 +1131 +1129 +1115 +1116 +1126 +1134 +1136 +1138 +1140 +1144 +1145 +1146 +1155 +1156 +1151 +1131 +1130 +1133 +1142 +1164 +1169 +1162 +1169 +1148 +1134 +1135 +1136 +1144 +1151 +1172 +1169 +1160 +1167 +1166 +1159 +1167 +1168 +1178 +1179 +1181 +1178 +1180 +1191 +1210 +1214 +1215 +1234 +1238 +1231 +1238 +1236 +1248 +1250 +1244 +1242 +1244 +1245 +1252 +1250 +1251 +1248 +1247 +1248 +1252 +1253 +1238 +1242 +1243 +1241 +1239 +1241 +1246 +1245 +1231 +1242 +1229 +1211 +1212 +1210 +1190 +1188 +1186 +1185 +1165 +1176 +1167 +1162 +1163 +1169 +1171 +1174 +1163 +1160 +1141 +1147 +1155 +1161 +1162 +1165 +1164 +1163 +1161 +1160 +1161 +1162 +1167 +1165 +1166 +1170 +1166 +1174 +1171 +1178 +1184 +1167 +1176 +1199