From 4071a7551681a64b730ce66e77d6daa84f61d1ff Mon Sep 17 00:00:00 2001 From: Colin McMillen Date: Tue, 1 Dec 2020 11:04:50 -0500 Subject: [PATCH] read input from file instead of hard-coding --- 2020/Program.cs | 14 +++- 2020/day1.txt | 200 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 211 insertions(+), 3 deletions(-) create mode 100644 2020/day1.txt diff --git a/2020/Program.cs b/2020/Program.cs index 110e5f4..ea320e1 100644 --- a/2020/Program.cs +++ b/2020/Program.cs @@ -1,12 +1,22 @@ using System; using static System.Console; using System.Collections.Generic; +using System.IO; +using System.Linq; using Xunit; namespace AdventOfCode { public class Program { + static string RootDir = + Environment.GetEnvironmentVariable("HOME") + "/src/adventofcode/2020/"; + + static List ReadInts(string filename) { + string[] lines = File.ReadAllLines(filename); + return lines.Select(s => int.Parse(s)).ToList(); + } + static int Day1Part1(List numbers) { for (var i = 0; i < numbers.Count; i++) { for (var j = i + 1; j < numbers.Count; j++) { @@ -40,9 +50,7 @@ namespace AdventOfCode { var exampleInput = new List() { 1721, 979, 366, 299, 675, 1456 }; - var testInput = new List() { - 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, - }; + var testInput = ReadInts(RootDir + "day1.txt"); Assert.Throws(() => Day1Part1(emptyInput)); Assert.Throws(() => Day1Part1(bogusInput)); diff --git a/2020/day1.txt b/2020/day1.txt new file mode 100644 index 0000000..7346cba --- /dev/null +++ b/2020/day1.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