diff --git a/AdventOfCode2018/2ndDay/challenge1/a.exe b/AdventOfCode2018/2ndDay/challenge1/a.exe deleted file mode 100644 index c4df43f..0000000 Binary files a/AdventOfCode2018/2ndDay/challenge1/a.exe and /dev/null differ diff --git a/AdventOfCode2018/2ndDay/challenge1/a.out b/AdventOfCode2018/2ndDay/challenge1/a.out new file mode 100755 index 0000000..f070164 Binary files /dev/null and b/AdventOfCode2018/2ndDay/challenge1/a.out differ diff --git a/AdventOfCode2018/2ndDay/challenge1/input.txt b/AdventOfCode2018/2ndDay/challenge1/input.txt index 8a42990..14b68f3 100644 --- a/AdventOfCode2018/2ndDay/challenge1/input.txt +++ b/AdventOfCode2018/2ndDay/challenge1/input.txt @@ -1,7 +1,250 @@ -abcdef -bababc -abbcde -abcccd -aabcdd -abcdee -ababab \ No newline at end of file +ybruvapdgixszyckwtfqjonsie +mbruvapxghslyyckwtfqjonsie +mbruvapdghslzyckwtkujonsie +rwruvapdghxlzyckwtfqjcnsie +obruvapdgtxlzyckwtfqionsie +lbruvapdghxqzyckwtfqjfnsie +mbrunapdghxlzyccatfqjonsie +mbruvapdghxlzyokltfqjdnsie +ybruvapdghxlzmckwtfqjmnsie +mbruwaadghxdzyckwtfqjonsie +muruvapdghxlzyckvtfqjonsim +mbruvapdghxlkyckwtxqjonjie +mbruvaqdghxlzyckwtfqjrnnie +mwruvapdghdlzyckttfqjonsie +mbruvapdgtelzyckwxfqjonsie +mbruvapdohxlzvckwtfqjonhie +mbrugapdgbxlzyckwtfqjynsie +mbruvapdghxlzyckwtlqjonjiu +mbruvapwghxlzyckwafqjonbie +wbruvapdghxlhyckwtfqjonsii +mbruvapdghxlzyckwtcqnonsiq +mbyuvapighxlzybkwtfqjonsie +mbrrvapdghxvzyckwtfqjonsio +mhruvapdghrlzyckwtfzjonsie +mtruvapvghxlzyckwtfnjonsie +mmrlhapdghxlzyckwtfqjonsie +mbruvapdgpxlzyjkwtfqjovsie +mbrucapdghxlzymkwtzqjonsie +mbeuvafdghxlzyckwtfqjonwie +mbruvapcghxlayckwtfqjonsii +mbruvabdghxlzyckwtfqyansie +mbruvjpdghxlzyckwtfqgfnsie +lbruvapdghxlzyckwtfqjonriv +mbrupapdghxlzycjwtfqronsie +mbpuvapdthxlzymkwtfqjonsie +mbiuvapdgixlzyckwxfqjonsie +mbruvapdghxyzyckwtfcjonsbe +mbrurapkghxlzyckwtfqjonzie +mbrufapdrhxlzyciwtfqjonsie +mbruvapdghxlzbckwtfqjoisae +ubruhapdghxlzuckwtfqjonsie +mbruvapdjhulzyckwtfqjonshe +mbruwapdgyxlzyckntfqjonsie +mwruvapdghplzyckwtfqjonsme +mbruvapjghtlzyckwtfqgonsie +pbruvapdghhlzyckwtfrjonsie +mbruvgpdihxqzyckwtfqjonsie +mbruvahdohxlzyckwtfijonsie +ibuuvapdghxlzyckwtfqjofsie +mbruvandghxlzyckwtfqjrnxie +mbrjvlpdghxlzyckwgfqjonsie +mbruvapogfxlzyckotfqjonsie +mbruvrpdghxlzyckutfejonsie +mbruvbpdghxlzyhkwtfqjonsip +mbruvapdghxlzyckmnfqjensie +mbruvapdghvlzyckwtfqjowsix +mbruvakdgholzwckwtfqjonsie +mbruvapdghxlzackwtfqconsae +mbruvapdghxlzyqvwtfqjlnsie +mprrvapdgfxlzyckwtfqjonsie +mbrunacdghxlhyckwtfqjonsie +obruvapdgsxlzyckwtfqjonvie +murcvapdghslzyckwtfqjonsie +mbruvapdghxlzyzkwmftjonsie +mbrwvapdgtvlzyckwtfqjonsie +mbxuvapdghxlzqcnwtfqjonsie +mbruvaddghxboyckwtfqjonsie +mhruvwndghxlzyckwtfqjonsie +mbrdvapdghxlzyckwmpqjonsie +mbruvapdgyxlzyckizfqjonsie +mbruvapdghxlzlckwtfqeowsie +mbruvbpdgrxlzyckwtfqjonsxe +mbruqapoghxlzyckwtvqjonsie +mbouhapdghmlzyckwtfqjonsie +mbruvapjghxidyckwtfqjonsie +mbsuvapkghxlkyckwtfqjonsie +mbruvlpdghxlzycrwtfqjonsis +mcrueapdghxlzyckwtfqjynsie +muruvapngbxlzyckwtfqjonsie +mbruvapdghxlzycawtfyjojsie +mbruvbpdghxczyjkwtfqjonsie +ybduvapdghxnzyckwtfqjonsie +mbruvbpdghxlzyckwtfbjousie +mbouvapdghxlzycbwtfqponsie +mbruvaedghplzycgwtfqjonsie +mbrhvapdghxlzyckytfqjgnsie +mbruvapdqbxleyckwtfqjonsie +mbruvapddhhldyckwtfqjonsie +mbruvapdghxlwrckwtfqjondie +mbruvapdmhxlzyckwtfqkonsve +xbbuvapdghxlzyckwtfkjonsie +mbruvapdghxlzyckwcfqjunkie +mbruvapdghxlzyckwtfqxonfib +mbrtvapkghxlzyckwtfqeonsie +mbruvazdghxldymkwtfqjonsie +kbruvapddhxlzfckwtfqjonsie +mbouvapdghxlpyckwtfqjoosie +mbauvapdghxlzyckwtfqjszsie +mbruvapdghtlzyckntfqtonsie +mbruvipdggxlzbckwtfqjonsie +mbruqapdghrlzyckwtfqjznsie +myruvacdghxlzyckwifqjonsie +mbruvapdghxlzuckwtfkjocsie +mwjuvapdghxlzyckwtfqjonsxe +mbruvapxghxlzickwtfqjobsie +mbrupapdghxtlyckwtfqjonsie +meruvapdjjxlzyckwtfqjonsie +mbruvkodghxlzyckwofqjonsie +mbruvapdgexlzyckwtgkjonsie +mbruvapwghxlzyckwtcqjonsiw +mbruvapdghxlzykkwtfqtoxsie +mbruvapdahxlzycgwtfwjonsie +mbruvapdgwxlhyckhtfqjonsie +mbruvapbghxlzycbhmfqjonsie +mbruvapdghxvzyzkwtfqjonsin +mbrcvapdqhxlzyckwyfqjonsie +zbruvaxdghxlzyckwgfqjonsie +mtruvapdghxlilckwtfqjonsie +bbruvapdghxlzyckwtfmjonsxe +mbruvajdghxlzyckwtfqfwnsie +mbruvapdgkxlzyckwtfqionpie +rbruvapdghxlryckwdfqjonsie +mbruvandghxlzyckwmfvjonsie +mbruvahdghxlzeckwtfqjonsme +mbruvnpcghxlzyckwtfqjobsie +mbruvapdghqlzyckwtfbjonsiy +mbruvavdghxlzyckwufqjodsie +mbruvapdghxlzyckwtfzmovsie +mbruvlpdghxuzyckwtfqjoesie +mbruvopdghxlzycwwtfqjansie +obruvapdghglzybkwtfqjonsie +mbpuvlpdghxlcyckwtfqjonsie +mbruvaidghxlzyckwtfmjonoie +mbruvapdihxzzyckwtfqjonsiy +mbquvapdghxlzyckwtfqconsme +mbruvapdghslzyckqtfqjojsie +mbrzdapdghxmzyckwtfqjonsie +mwruvapdghxozyckwtfqjonsxe +muruvapdgfxlzyckwtfqjojsie +wtruvapdghxlzyckvtfqjonsie +mbruvapdghxlzyckysfqjxnsie +mbruvrpdghxczyckktfqjonsie +mbquvapdghxlryckwtfqjonsne +mbruvapdghflzycvwtfqjpnsie +mbruvapughclzyckwtfqjonsin +mbrhvapdghxlpyckwtfqjonsre +mbruvapdgtxlzyckwtfqjoosit +mbrupapnghxhzyckwtfqjonsie +mmvuvapdvhxlzyckwtfqjonsie +mbruvaptghxlzyckwtfqjotsse +mgruvapvghxlzyckwtfqjonsix +mbrupapdghxszyckwtfqjunsie +mbruvkpdghelzyckwtfqjpnsie +mbruvrrdghjlzyckwtfqjonsie +mbruvapdghnlzyckwtfkjonsze +mbruvwpdghxlzyckwtfqhoysie +mbrsvapdfhxlzyckwtfqjobsie +mbruvapdgexezymkwtfqjonsie +ybruvapdghxlzyckwtfqxonsiw +mrruvapdghxdzyckwtfqjossie +mbruvapdghtlzyckwtfqconsiu +mbrpvapdghxlzlckwpfqjonsie +mbruvjpdghslzyckwtfqjjnsie +mhruvapoghxlzyckwtfvjonsie +mbrubqpdghvlzyckwtfqjonsie +mbruvapdghxlzackwtfqconsiw +mbruvapdgnxlzkckwtfqjdnsie +mbrudapgghelzyckwtfqjonsie +mbruvapdghxlzlakwbfqjonsie +mbpuvapdghxlzyckwtuqjonjie +abruvapdghxlzykkwtfqjonzie +mbrupupdghxlsyckwtfqjonsie +mbrsvupdghxlzyckwtfqjonkie +mxruvgpdghxllyckwtfqjonsie +mbrnvapdghxlzycbwtfqfonsie +mbrbxapdghxlzyckttfqjonsie +mbnuvapdghxlzyxkwtmqjonsie +mbrfvapdghjlzickwtfqjonsie +mbhuvupdghxlzyxkwtfqjonsie +mbrcvapdghxluyckwtfqjznsie +mbruvapdghxlzyckwofqjoxsiz +mbrevapdghxloyckwtfqjonnie +mbruvipdghnlzyckwtfqjopsie +mbxxvaptghxlzyckwtfqjonsie +mbruvcpdghxlztckwtjqjonsie +mqruvlpdghxlzyckotfqjonsie +mbruvapdgqxlzyckwtfqjpvsie +mbruvapdgvxlzyjkwtfqjbnsie +mbruvapdghxlgyckwtfqcocsie +mbruvapdghxkwyckwtfqjoqsie +mbrgvavdghxlzyckwxfqjonsie +qbruqapdgvxlzyckwtfqjonsie +mbauvapdghxlzgckwtfqjunsie +mbruvapdgdxluyckwtfqjoosie +mbruvapdghxlzykkwtfqwobsie +mbruvapdghxlzhcnwtfqjonqie +mbruvapdghxlzycbhmfqjonsie +mbruvapdghxluyczwtfqjontie +mbruvapnghxlzyckwnfqjonbie +moruvapdghxlzcckwtfqponsie +mbruvapfgxxlzyckwtfqjunsie +mbruvapdghxlryckvtfejonsie +mbrzvapdghxlzvcbwtfqjonsie +mbruvapdgqxlzyckwcfqjonsce +abruvupdrhxlzyckwtfqjonsie +mbrubaptghxlzyckwtfqjondie +mgruvapdgpxlzyckwtfijonsie +mbruvapdghxczlckwtfujonsie +mbruvapdgmmlzyckwtfqjonsir +mbruvapdhhxltyckwtfdjonsie +mbruvapdghxlzyckwtfdjjnste +mbrdvzpdghxlcyckwtfqjonsie +mbruvapdghxlzyckwtnqbonsim +mbrovapdghxlzyckwtfpjousie +mymuvapdghxlzyjkwtfqjonsie +mbpuvapdghxlzyckwtfljcnsie +mbrxvapdghxlzyclwtfqjonpie +mbrueapdghxlzyckwtfqjopsia +mbruvapdghxlzycdwtfqjbfsie +tbruvavdghxlzyckwtmqjonsie +mbduvapdghxlzyckwrfqjrnsie +mkrsvapughxlzyckwtfqjonsie +mbruvapdghylzyckwtfqtolsie +mgruvapdglxldyckwtfqjonsie +mbrunapdghclzyckwtfqjonsiy +mbruvapdgrxlxyckwtfgjonsie +mbruvapdghxpzbckftfqjonsie +mbruvcpdghxyzyckotfqjonsie +mbruvapdghxlsyckwtfqcqnsie +mbruvapdghxlzzckwtfqjonskf +mbruvppdghxlzfckwtfqjgnsie +mbhuvapdghxlzytkwtfqjonoie +mbruvapdghxlzvrkwtfqjjnsie +mbmuvapdghxuzyckwtfqjonsze +mbruvapdghnlzycnwtfqjonsil +mbruvapdgholzyckitfqjonsia +mbruxapdghxlmyckwtfqbonsie +mbauvapdgholzyckwtfqjolsie +mbruvapdghxlzyckwtfqjotslq +dbrutapdghxlzyckwtfqjonsiv +mbruvapdzhxlyyckwtfbjonsie +mmruaapsghxlzyckwtfqjonsie +mbruvaldgqxqzyckwtfqjonsie +mbruvaodghxdzyjkwtfqjonsie +mbrcmatdghxlzyckwtfqjonsie +mbrqvapdgtxlzycewtfqjonsie +mjruvapdghzlzyckwtfqjonrie +mbruvapdghxopcckwtfqjonsie +mbruvapdghxszycwwtfqjoqsie +mbruvapdgoxezyckwtjqjonsie \ No newline at end of file diff --git a/AdventOfCode2018/2ndDay/challenge1/main.cpp b/AdventOfCode2018/2ndDay/challenge1/main.cpp index fde7842..dd50ca9 100644 --- a/AdventOfCode2018/2ndDay/challenge1/main.cpp +++ b/AdventOfCode2018/2ndDay/challenge1/main.cpp @@ -1,35 +1,36 @@ +#include #include #include -#include -#include -// std::vector parseFile(std::string fileName) { -// std::cout << "test1" << fileName << std::endl; +bool isRepeat(std::string line, int repeats) { + for (char c = 'a'; c <= 'z'; ++c) { + int count = 0; + for (size_t i = 0; i < line.size(); ++i) { + if (line[i] == c) + ++count; + } + if (count == repeats) + return true; + } + return false; +} -// std::vector output; -// std::cout << "test2" << fileName << std::endl; - -// std::fstream stream(fileName); -// std::cout << "Reading: " << fileName << " into array" << std::endl; - -// for (std::string line; std::getline(stream, line); ) -// output.push_back(line); -// return output; -// } +int checkSum(std::string fileName) { + std::fstream input(fileName); + std::string line; + int doubles = 0; + int triples = 0; + + while (!input.eof()) { + std::getline(input, line); + if (isRepeat(line, 2)) + ++doubles; + if (isRepeat(line, 3)) + ++triples; + } + return doubles * triples; +} int main(int argc, char** argv) { - try { - std::cout << "WTF WHY ISNT THIS OUTPUTTING" << std::endl; - - std::vector lines; // = parseFile("input.txt");// *(argv + 1)); - std::fstream stream("input.txt"); - - // std::string line; - // for (std::string line; std::getline(stream, line); ) {} - // lines.push_back(line); - // for (unsigned int i = 0; i < lines.size(); i++) - // std::cout << lines[i] << std::endl; - } catch (const std::string &e) { - std::cout << e << std::endl; - } + std::cout << "Found: " << checkSum("input.txt") << std::endl; } diff --git a/AdventOfCode2018/2ndDay/challenge2/a.out b/AdventOfCode2018/2ndDay/challenge2/a.out new file mode 100755 index 0000000..78b30fc Binary files /dev/null and b/AdventOfCode2018/2ndDay/challenge2/a.out differ diff --git a/AdventOfCode2018/2ndDay/challenge2/challenge.txt b/AdventOfCode2018/2ndDay/challenge2/challenge.txt new file mode 100644 index 0000000..1ac2e8d --- /dev/null +++ b/AdventOfCode2018/2ndDay/challenge2/challenge.txt @@ -0,0 +1,15 @@ +--- Part Two --- +Confident that your list of box IDs is complete, you're ready to find the boxes full of prototype fabric. + +The boxes will have IDs which differ by exactly one character at the same position in both strings. For example, given the following box IDs: + +abcde +fghij +klmno +pqrst +fguij +axcye +wvxyz +The IDs abcde and axcye are close, but they differ by two characters (the second and fourth). However, the IDs fghij and fguij differ by exactly one character, the third (h and u). Those must be the correct boxes. + +What letters are common between the two correct box IDs? (In the example above, this is found by removing the differing character from either ID, producing fgij.) \ No newline at end of file diff --git a/AdventOfCode2018/2ndDay/challenge2/input.txt b/AdventOfCode2018/2ndDay/challenge2/input.txt new file mode 100644 index 0000000..14b68f3 --- /dev/null +++ b/AdventOfCode2018/2ndDay/challenge2/input.txt @@ -0,0 +1,250 @@ +ybruvapdgixszyckwtfqjonsie +mbruvapxghslyyckwtfqjonsie +mbruvapdghslzyckwtkujonsie +rwruvapdghxlzyckwtfqjcnsie +obruvapdgtxlzyckwtfqionsie +lbruvapdghxqzyckwtfqjfnsie +mbrunapdghxlzyccatfqjonsie +mbruvapdghxlzyokltfqjdnsie +ybruvapdghxlzmckwtfqjmnsie +mbruwaadghxdzyckwtfqjonsie +muruvapdghxlzyckvtfqjonsim +mbruvapdghxlkyckwtxqjonjie +mbruvaqdghxlzyckwtfqjrnnie +mwruvapdghdlzyckttfqjonsie +mbruvapdgtelzyckwxfqjonsie +mbruvapdohxlzvckwtfqjonhie +mbrugapdgbxlzyckwtfqjynsie +mbruvapdghxlzyckwtlqjonjiu +mbruvapwghxlzyckwafqjonbie +wbruvapdghxlhyckwtfqjonsii +mbruvapdghxlzyckwtcqnonsiq +mbyuvapighxlzybkwtfqjonsie +mbrrvapdghxvzyckwtfqjonsio +mhruvapdghrlzyckwtfzjonsie +mtruvapvghxlzyckwtfnjonsie +mmrlhapdghxlzyckwtfqjonsie +mbruvapdgpxlzyjkwtfqjovsie +mbrucapdghxlzymkwtzqjonsie +mbeuvafdghxlzyckwtfqjonwie +mbruvapcghxlayckwtfqjonsii +mbruvabdghxlzyckwtfqyansie +mbruvjpdghxlzyckwtfqgfnsie +lbruvapdghxlzyckwtfqjonriv +mbrupapdghxlzycjwtfqronsie +mbpuvapdthxlzymkwtfqjonsie +mbiuvapdgixlzyckwxfqjonsie +mbruvapdghxyzyckwtfcjonsbe +mbrurapkghxlzyckwtfqjonzie +mbrufapdrhxlzyciwtfqjonsie +mbruvapdghxlzbckwtfqjoisae +ubruhapdghxlzuckwtfqjonsie +mbruvapdjhulzyckwtfqjonshe +mbruwapdgyxlzyckntfqjonsie +mwruvapdghplzyckwtfqjonsme +mbruvapjghtlzyckwtfqgonsie +pbruvapdghhlzyckwtfrjonsie +mbruvgpdihxqzyckwtfqjonsie +mbruvahdohxlzyckwtfijonsie +ibuuvapdghxlzyckwtfqjofsie +mbruvandghxlzyckwtfqjrnxie +mbrjvlpdghxlzyckwgfqjonsie +mbruvapogfxlzyckotfqjonsie +mbruvrpdghxlzyckutfejonsie +mbruvbpdghxlzyhkwtfqjonsip +mbruvapdghxlzyckmnfqjensie +mbruvapdghvlzyckwtfqjowsix +mbruvakdgholzwckwtfqjonsie +mbruvapdghxlzackwtfqconsae +mbruvapdghxlzyqvwtfqjlnsie +mprrvapdgfxlzyckwtfqjonsie +mbrunacdghxlhyckwtfqjonsie +obruvapdgsxlzyckwtfqjonvie +murcvapdghslzyckwtfqjonsie +mbruvapdghxlzyzkwmftjonsie +mbrwvapdgtvlzyckwtfqjonsie +mbxuvapdghxlzqcnwtfqjonsie +mbruvaddghxboyckwtfqjonsie +mhruvwndghxlzyckwtfqjonsie +mbrdvapdghxlzyckwmpqjonsie +mbruvapdgyxlzyckizfqjonsie +mbruvapdghxlzlckwtfqeowsie +mbruvbpdgrxlzyckwtfqjonsxe +mbruqapoghxlzyckwtvqjonsie +mbouhapdghmlzyckwtfqjonsie +mbruvapjghxidyckwtfqjonsie +mbsuvapkghxlkyckwtfqjonsie +mbruvlpdghxlzycrwtfqjonsis +mcrueapdghxlzyckwtfqjynsie +muruvapngbxlzyckwtfqjonsie +mbruvapdghxlzycawtfyjojsie +mbruvbpdghxczyjkwtfqjonsie +ybduvapdghxnzyckwtfqjonsie +mbruvbpdghxlzyckwtfbjousie +mbouvapdghxlzycbwtfqponsie +mbruvaedghplzycgwtfqjonsie +mbrhvapdghxlzyckytfqjgnsie +mbruvapdqbxleyckwtfqjonsie +mbruvapddhhldyckwtfqjonsie +mbruvapdghxlwrckwtfqjondie +mbruvapdmhxlzyckwtfqkonsve +xbbuvapdghxlzyckwtfkjonsie +mbruvapdghxlzyckwcfqjunkie +mbruvapdghxlzyckwtfqxonfib +mbrtvapkghxlzyckwtfqeonsie +mbruvazdghxldymkwtfqjonsie +kbruvapddhxlzfckwtfqjonsie +mbouvapdghxlpyckwtfqjoosie +mbauvapdghxlzyckwtfqjszsie +mbruvapdghtlzyckntfqtonsie +mbruvipdggxlzbckwtfqjonsie +mbruqapdghrlzyckwtfqjznsie +myruvacdghxlzyckwifqjonsie +mbruvapdghxlzuckwtfkjocsie +mwjuvapdghxlzyckwtfqjonsxe +mbruvapxghxlzickwtfqjobsie +mbrupapdghxtlyckwtfqjonsie +meruvapdjjxlzyckwtfqjonsie +mbruvkodghxlzyckwofqjonsie +mbruvapdgexlzyckwtgkjonsie +mbruvapwghxlzyckwtcqjonsiw +mbruvapdghxlzykkwtfqtoxsie +mbruvapdahxlzycgwtfwjonsie +mbruvapdgwxlhyckhtfqjonsie +mbruvapbghxlzycbhmfqjonsie +mbruvapdghxvzyzkwtfqjonsin +mbrcvapdqhxlzyckwyfqjonsie +zbruvaxdghxlzyckwgfqjonsie +mtruvapdghxlilckwtfqjonsie +bbruvapdghxlzyckwtfmjonsxe +mbruvajdghxlzyckwtfqfwnsie +mbruvapdgkxlzyckwtfqionpie +rbruvapdghxlryckwdfqjonsie +mbruvandghxlzyckwmfvjonsie +mbruvahdghxlzeckwtfqjonsme +mbruvnpcghxlzyckwtfqjobsie +mbruvapdghqlzyckwtfbjonsiy +mbruvavdghxlzyckwufqjodsie +mbruvapdghxlzyckwtfzmovsie +mbruvlpdghxuzyckwtfqjoesie +mbruvopdghxlzycwwtfqjansie +obruvapdghglzybkwtfqjonsie +mbpuvlpdghxlcyckwtfqjonsie +mbruvaidghxlzyckwtfmjonoie +mbruvapdihxzzyckwtfqjonsiy +mbquvapdghxlzyckwtfqconsme +mbruvapdghslzyckqtfqjojsie +mbrzdapdghxmzyckwtfqjonsie +mwruvapdghxozyckwtfqjonsxe +muruvapdgfxlzyckwtfqjojsie +wtruvapdghxlzyckvtfqjonsie +mbruvapdghxlzyckysfqjxnsie +mbruvrpdghxczyckktfqjonsie +mbquvapdghxlryckwtfqjonsne +mbruvapdghflzycvwtfqjpnsie +mbruvapughclzyckwtfqjonsin +mbrhvapdghxlpyckwtfqjonsre +mbruvapdgtxlzyckwtfqjoosit +mbrupapnghxhzyckwtfqjonsie +mmvuvapdvhxlzyckwtfqjonsie +mbruvaptghxlzyckwtfqjotsse +mgruvapvghxlzyckwtfqjonsix +mbrupapdghxszyckwtfqjunsie +mbruvkpdghelzyckwtfqjpnsie +mbruvrrdghjlzyckwtfqjonsie +mbruvapdghnlzyckwtfkjonsze +mbruvwpdghxlzyckwtfqhoysie +mbrsvapdfhxlzyckwtfqjobsie +mbruvapdgexezymkwtfqjonsie +ybruvapdghxlzyckwtfqxonsiw +mrruvapdghxdzyckwtfqjossie +mbruvapdghtlzyckwtfqconsiu +mbrpvapdghxlzlckwpfqjonsie +mbruvjpdghslzyckwtfqjjnsie +mhruvapoghxlzyckwtfvjonsie +mbrubqpdghvlzyckwtfqjonsie +mbruvapdghxlzackwtfqconsiw +mbruvapdgnxlzkckwtfqjdnsie +mbrudapgghelzyckwtfqjonsie +mbruvapdghxlzlakwbfqjonsie +mbpuvapdghxlzyckwtuqjonjie +abruvapdghxlzykkwtfqjonzie +mbrupupdghxlsyckwtfqjonsie +mbrsvupdghxlzyckwtfqjonkie +mxruvgpdghxllyckwtfqjonsie +mbrnvapdghxlzycbwtfqfonsie +mbrbxapdghxlzyckttfqjonsie +mbnuvapdghxlzyxkwtmqjonsie +mbrfvapdghjlzickwtfqjonsie +mbhuvupdghxlzyxkwtfqjonsie +mbrcvapdghxluyckwtfqjznsie +mbruvapdghxlzyckwofqjoxsiz +mbrevapdghxloyckwtfqjonnie +mbruvipdghnlzyckwtfqjopsie +mbxxvaptghxlzyckwtfqjonsie +mbruvcpdghxlztckwtjqjonsie +mqruvlpdghxlzyckotfqjonsie +mbruvapdgqxlzyckwtfqjpvsie +mbruvapdgvxlzyjkwtfqjbnsie +mbruvapdghxlgyckwtfqcocsie +mbruvapdghxkwyckwtfqjoqsie +mbrgvavdghxlzyckwxfqjonsie +qbruqapdgvxlzyckwtfqjonsie +mbauvapdghxlzgckwtfqjunsie +mbruvapdgdxluyckwtfqjoosie +mbruvapdghxlzykkwtfqwobsie +mbruvapdghxlzhcnwtfqjonqie +mbruvapdghxlzycbhmfqjonsie +mbruvapdghxluyczwtfqjontie +mbruvapnghxlzyckwnfqjonbie +moruvapdghxlzcckwtfqponsie +mbruvapfgxxlzyckwtfqjunsie +mbruvapdghxlryckvtfejonsie +mbrzvapdghxlzvcbwtfqjonsie +mbruvapdgqxlzyckwcfqjonsce +abruvupdrhxlzyckwtfqjonsie +mbrubaptghxlzyckwtfqjondie +mgruvapdgpxlzyckwtfijonsie +mbruvapdghxczlckwtfujonsie +mbruvapdgmmlzyckwtfqjonsir +mbruvapdhhxltyckwtfdjonsie +mbruvapdghxlzyckwtfdjjnste +mbrdvzpdghxlcyckwtfqjonsie +mbruvapdghxlzyckwtnqbonsim +mbrovapdghxlzyckwtfpjousie +mymuvapdghxlzyjkwtfqjonsie +mbpuvapdghxlzyckwtfljcnsie +mbrxvapdghxlzyclwtfqjonpie +mbrueapdghxlzyckwtfqjopsia +mbruvapdghxlzycdwtfqjbfsie +tbruvavdghxlzyckwtmqjonsie +mbduvapdghxlzyckwrfqjrnsie +mkrsvapughxlzyckwtfqjonsie +mbruvapdghylzyckwtfqtolsie +mgruvapdglxldyckwtfqjonsie +mbrunapdghclzyckwtfqjonsiy +mbruvapdgrxlxyckwtfgjonsie +mbruvapdghxpzbckftfqjonsie +mbruvcpdghxyzyckotfqjonsie +mbruvapdghxlsyckwtfqcqnsie +mbruvapdghxlzzckwtfqjonskf +mbruvppdghxlzfckwtfqjgnsie +mbhuvapdghxlzytkwtfqjonoie +mbruvapdghxlzvrkwtfqjjnsie +mbmuvapdghxuzyckwtfqjonsze +mbruvapdghnlzycnwtfqjonsil +mbruvapdgholzyckitfqjonsia +mbruxapdghxlmyckwtfqbonsie +mbauvapdgholzyckwtfqjolsie +mbruvapdghxlzyckwtfqjotslq +dbrutapdghxlzyckwtfqjonsiv +mbruvapdzhxlyyckwtfbjonsie +mmruaapsghxlzyckwtfqjonsie +mbruvaldgqxqzyckwtfqjonsie +mbruvaodghxdzyjkwtfqjonsie +mbrcmatdghxlzyckwtfqjonsie +mbrqvapdgtxlzycewtfqjonsie +mjruvapdghzlzyckwtfqjonrie +mbruvapdghxopcckwtfqjonsie +mbruvapdghxszycwwtfqjoqsie +mbruvapdgoxezyckwtjqjonsie \ No newline at end of file diff --git a/AdventOfCode2018/2ndDay/challenge2/main.cpp b/AdventOfCode2018/2ndDay/challenge2/main.cpp new file mode 100644 index 0000000..10884c1 --- /dev/null +++ b/AdventOfCode2018/2ndDay/challenge2/main.cpp @@ -0,0 +1,50 @@ +#include +#include +#include +#include + +std::string equalLetters(std::string fileName) { + std::fstream input(fileName); + std::string line; + std::string a; + std::string b; + std::string answer; + std::vector lines; + + while (!input.eof()) { + std::getline(input, line); + lines.push_back(line); + } + + for (size_t i = 0; i < lines.size(); ++i) { + int count = 0; + a = lines[i]; + + for (size_t j = i + 1; j < lines.size(); ++j) { + b = lines[j]; + count = 0; + + for (size_t k = 0; k < a.size(); ++k) { + if (a[k] != b[k]) + ++count; + if (count > 1) + break; + } + if (count == 1) + break; + } + if (count == 1) + break; + } + + for (size_t i = 0; i < a.size(); ++i) { + if (a[i] == b[i]) + answer += a[i]; + } + + return answer; +} + +int main(int argc, char** argv) { + std::cout << "Found: " << equalLetters("input.txt") << std::endl; +}