From b2c840e4697ea1f720f168895be05602b5253d3c Mon Sep 17 00:00:00 2001 From: Mattrixwv Date: Wed, 2 Dec 2020 16:50:06 -0500 Subject: [PATCH] Finished Day1-1 --- Day1-1.cpp | 64 ++++++++++++++++ inputs/Day1.txt | 200 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 264 insertions(+) create mode 100644 Day1-1.cpp create mode 100644 inputs/Day1.txt diff --git a/Day1-1.cpp b/Day1-1.cpp new file mode 100644 index 0000000..16e4778 --- /dev/null +++ b/Day1-1.cpp @@ -0,0 +1,64 @@ +//Fun/AdventCalendar2020/Day1-1.cpp +//Matthew Ellison +// Created: 12-02-20 +//Modified: 12-02-20 +//Find the two entries that sum to 2020 and then multiply those two numbers together + + +#include +#include +#include "Stopwatch.hpp" + + +std::vector numbersList = {1711, 1924, 1384, 1590, 1876, 1918, 2003, 1514, 1608, 1984, 1706, 1375, 1476, 1909, 1615, 1879, 1940, 1945, 1899, 1510, + 1657, 1685, 1588, 1884, 1864, 1995, 1648, 1713, 1532, 1556, 1572, 1667, 1861, 1773, 1501, 1564, 1756, 395, 1585, 1717, + 1553, 1487, 1617, 1808, 1780, 1570, 1881, 1992, 1894, 1772, 1837, 2002, 1659, 1731, 1873, 1760, 552, 1575, 1597, 1986, + 1416, 1398, 1737, 1027, 1457, 198, 1904, 1753, 1727, 633, 1577, 1944, 1369, 1400, 1843, 1966, 1008, 1681, 1890, 1939, + 1605, 1548, 1953, 1839, 1409, 1592, 1744, 1761, 1613, 1412, 1759, 703, 1498, 1941, 1425, 1528, 1469, 1728, 1447, 1406, + 1797, 1543, 1682, 1722, 1723, 1893, 1644, 796, 1505, 1715, 1729, 1943, 1626, 1602, 1964, 1509, 1816, 1660, 1399, 1996, + 1750, 1701, 1963, 1979, 1558, 1506, 1465, 2001, 1935, 1616, 1990, 1946, 1818, 1892, 1431, 1832, 1688, 2004, 1424, 1716, + 1897, 1931, 1557, 1389, 1872, 1640, 1670, 1911, 1427, 1730, 211, 1420, 1488, 1689, 1383, 1967, 1594, 642, 1622, 1627, + 1607, 1372, 1596, 1451, 1693, 1380, 1745, 1908, 1785, 1646, 1824, 1418, 1258, 1664, 1631, 1459, 1901, 1838, 1794, 1815, + 1388, 1809, 1920, 1411, 1593, 1676, 1610, 1629, 1512, 1522, 1649, 1740, 1695, 1504, 1856, 1791, 1898, 1661, 1806, 1851}; +int NEEDED_SUM = 2020; + + +int main(){ + int firstNum = 0; //Holds the first number of the sum + int secondNum = 0; //Holds the second number of the sum + bool found = false; //Flags whether the answer has already been found + mee::Stopwatch timer; + + //Start the timer + timer.start(); + + //Find the two numbers in the array that make the correct sum + for(int cnt1 = 0;(cnt1 < numbersList.size()) && (!found);++cnt1){ + for(int cnt2 = cnt1 + 1;(cnt2 < numbersList.size()) && (!found);++cnt2){ + if((numbersList[cnt1] + numbersList[cnt2]) == NEEDED_SUM){ + firstNum = numbersList[cnt1]; + secondNum = numbersList[cnt2]; + found = true; + } + } + } + + //Get the product of the 2 numbers + int prod = firstNum * secondNum; + + //Stop the timer + timer.stop(); + + //Print the results + std::cout << "The numbers who's sum is " << NEEDED_SUM << " are " << firstNum << " and " << secondNum + << "\nThe product of the numbers is " << prod + <<"\nIt took " << timer.getStr() << " to finish this problem" << std::endl; + + return 0; +} + +/* Results: +The numbers who's sum is 2020 are 211 and 1809 +The product of the numbers is 381699 +It took 0.000 nanoseconds to finish this problem +*/ diff --git a/inputs/Day1.txt b/inputs/Day1.txt new file mode 100644 index 0000000..2c9864e --- /dev/null +++ b/inputs/Day1.txt @@ -0,0 +1,200 @@ +1711 +1924 +1384 +1590 +1876 +1918 +2003 +1514 +1608 +1984 +1706 +1375 +1476 +1909 +1615 +1879 +1940 +1945 +1899 +1510 +1657 +1685 +1588 +1884 +1864 +1995 +1648 +1713 +1532 +1556 +1572 +1667 +1861 +1773 +1501 +1564 +1756 +395 +1585 +1717 +1553 +1487 +1617 +1808 +1780 +1570 +1881 +1992 +1894 +1772 +1837 +2002 +1659 +1731 +1873 +1760 +552 +1575 +1597 +1986 +1416 +1398 +1737 +1027 +1457 +198 +1904 +1753 +1727 +633 +1577 +1944 +1369 +1400 +1843 +1966 +1008 +1681 +1890 +1939 +1605 +1548 +1953 +1839 +1409 +1592 +1744 +1761 +1613 +1412 +1759 +703 +1498 +1941 +1425 +1528 +1469 +1728 +1447 +1406 +1797 +1543 +1682 +1722 +1723 +1893 +1644 +796 +1505 +1715 +1729 +1943 +1626 +1602 +1964 +1509 +1816 +1660 +1399 +1996 +1750 +1701 +1963 +1979 +1558 +1506 +1465 +2001 +1935 +1616 +1990 +1946 +1818 +1892 +1431 +1832 +1688 +2004 +1424 +1716 +1897 +1931 +1557 +1389 +1872 +1640 +1670 +1911 +1427 +1730 +211 +1420 +1488 +1689 +1383 +1967 +1594 +642 +1622 +1627 +1607 +1372 +1596 +1451 +1693 +1380 +1745 +1908 +1785 +1646 +1824 +1418 +1258 +1664 +1631 +1459 +1901 +1838 +1794 +1815 +1388 +1809 +1920 +1411 +1593 +1676 +1610 +1629 +1512 +1522 +1649 +1740 +1695 +1504 +1856 +1791 +1898 +1661 +1806 +1851 \ No newline at end of file