summaryrefslogtreecommitdiffstats
path: root/19
diff options
context:
space:
mode:
authorGustav Sörnäs <gustav@sornas.net>2020-12-09 08:21:39 +0100
committerGustav Sörnäs <gustav@sornas.net>2020-12-09 08:21:39 +0100
commit305854aa4a57b0a0c377617c65111066b3637f62 (patch)
treef949631aaee8e8a92e8f2d1fc4f8229cb7607811 /19
parent52ce2afc40e599138d643fe04d42f9c149d91192 (diff)
downloadaoc-305854aa4a57b0a0c377617c65111066b3637f62.tar.gz
cleanup 2019
Diffstat (limited to '19')
-rw-r--r--19/cpp/01-1.cpp8
-rw-r--r--19/cpp/01-2.cpp14
-rw-r--r--19/cpp/02-1.cpp47
-rw-r--r--19/cpp/02-2.cpp66
-rw-r--r--19/input/15-ed1
-rw-r--r--19/input/15-eskil1
6 files changed, 0 insertions, 137 deletions
diff --git a/19/cpp/01-1.cpp b/19/cpp/01-1.cpp
deleted file mode 100644
index fcb593a..0000000
--- a/19/cpp/01-1.cpp
+++ /dev/null
@@ -1,8 +0,0 @@
-#include<iostream>
-
-int main() {
- int mass, sum = 0;
- while (std::cin >> mass) sum += (mass / 3) - 2;
- std::cout << sum << std::endl;
-}
-
diff --git a/19/cpp/01-2.cpp b/19/cpp/01-2.cpp
deleted file mode 100644
index 7ce1a82..0000000
--- a/19/cpp/01-2.cpp
+++ /dev/null
@@ -1,14 +0,0 @@
-#include<iostream>
-
-int getFuel(int mass) {
- int fuel = (mass / 3) - 2;
- if (fuel <= 0) return 0;
- return fuel + getFuel(fuel);
-}
-
-int main() {
- int mass, sum = 0;
- while (std::cin >> mass) sum += getFuel(mass);
- std::cout << sum << std::endl;
-}
-
diff --git a/19/cpp/02-1.cpp b/19/cpp/02-1.cpp
deleted file mode 100644
index b6db056..0000000
--- a/19/cpp/02-1.cpp
+++ /dev/null
@@ -1,47 +0,0 @@
-#include<fstream>
-#include<iostream>
-#include<vector>
-using namespace std;
-
-int main() {
- ifstream inFile;
- inFile.open("02.in");
-
- vector<int> program;
- int noun, verb;
- // enter noun, verb
- cin >> noun;
- cin >> verb;
-
- // read program
- int n;
- while (inFile >> n) program.push_back(n);
- program[1] = noun;
- program[2] = verb;
- //cout << "Program: " << endl;
- //dump(program);
-
- // copy program to mem
- vector<int> mem(program);
-
- // calculate
- int pointer = 0;
- int op;
- do {
- //cout << "Pointer: " << pointer << endl;
- //cout << "Memory: " << endl;
- //dump(mem);
- op = mem[pointer];
- switch (op) {
- case 1:
- mem[mem[pointer+3]] = mem[mem[pointer+1]] + mem[mem[pointer+2]];
- pointer += 4;
- break;
- case 2:
- mem[mem[pointer+3]] = mem[mem[pointer+1]] * mem[mem[pointer+2]];
- pointer += 4;
- break;
- }
- } while (mem[pointer] != 99);
- cout << mem[0] << endl;
-}
diff --git a/19/cpp/02-2.cpp b/19/cpp/02-2.cpp
deleted file mode 100644
index aab95a8..0000000
--- a/19/cpp/02-2.cpp
+++ /dev/null
@@ -1,66 +0,0 @@
-#include<fstream>
-#include<iostream>
-#include<vector>
-#include <chrono>
-using namespace std;
-
-int run(vector<int> prog, int noun, int verb, int pointer, int op) {
- vector<int> mem(prog);
- mem[1] = noun;
- mem[2] = verb;
-
- // calculate
- pointer = 0;
- do {
- //cout << "Pointer: " << pointer << endl;
- //cout << "Memory: " << endl;
- //dump(mem);
- op = mem[pointer];
- switch (op) {
- case 1:
- mem[mem[pointer+3]] = mem[mem[pointer+1]] + mem[mem[pointer+2]];
- pointer += 4;
- break;
- case 2:
- mem[mem[pointer+3]] = mem[mem[pointer+1]] * mem[mem[pointer+2]];
- pointer += 4;
- break;
- }
- } while (mem[pointer] != 99);
- return mem[0];
-}
-
-int main() {
- ifstream inFile;
- inFile.open("02.in");
-
- vector<int> program;
- int noun, verb;
- int pointer;
- int op;
-
- // read program
- int n;
- while (inFile >> n) program.push_back(n);
- //cout << "Program: " << endl;
- //dump(program);
-
- int res;
-
- auto t1 = chrono::high_resolution_clock::now();
-
- for (int n = 0; n < 100; n++) {
- for (int v = 0; v < 100; v++) {
- res = run(program, n, v, pointer, op);
- //cout << n << " " << v << " " << res << endl;
- if (res == 19690720) {
- cout << n << " " << v << endl;
- auto t2 = chrono::high_resolution_clock::now();
- auto duration = chrono::duration_cast<std::chrono::microseconds>( t2 - t1 ).count();
- cout << duration << endl;
- return 0;
- }
- }
- }
- return 1;
-}
diff --git a/19/input/15-ed b/19/input/15-ed
deleted file mode 100644
index da43b33..0000000
--- a/19/input/15-ed
+++ /dev/null
@@ -1 +0,0 @@
-3,1033,1008,1033,1,1032,1005,1032,31,1008,1033,2,1032,1005,1032,58,1008,1033,3,1032,1005,1032,81,1008,1033,4,1032,1005,1032,104,99,1002,1034,1,1039,102,1,1036,1041,1001,1035,-1,1040,1008,1038,0,1043,102,-1,1043,1032,1,1037,1032,1042,1105,1,124,101,0,1034,1039,102,1,1036,1041,1001,1035,1,1040,1008,1038,0,1043,1,1037,1038,1042,1106,0,124,1001,1034,-1,1039,1008,1036,0,1041,1002,1035,1,1040,1001,1038,0,1043,101,0,1037,1042,1106,0,124,1001,1034,1,1039,1008,1036,0,1041,101,0,1035,1040,102,1,1038,1043,1002,1037,1,1042,1006,1039,217,1006,1040,217,1008,1039,40,1032,1005,1032,217,1008,1040,40,1032,1005,1032,217,1008,1039,35,1032,1006,1032,165,1008,1040,9,1032,1006,1032,165,1101,0,2,1044,1105,1,224,2,1041,1043,1032,1006,1032,179,1102,1,1,1044,1105,1,224,1,1041,1043,1032,1006,1032,217,1,1042,1043,1032,1001,1032,-1,1032,1002,1032,39,1032,1,1032,1039,1032,101,-1,1032,1032,101,252,1032,211,1007,0,26,1044,1105,1,224,1101,0,0,1044,1106,0,224,1006,1044,247,102,1,1039,1034,101,0,1040,1035,102,1,1041,1036,1002,1043,1,1038,1001,1042,0,1037,4,1044,1106,0,0,22,11,19,72,14,9,6,73,82,17,41,18,83,18,49,19,12,14,39,17,20,69,20,12,48,8,8,59,36,7,33,1,15,13,10,46,96,15,2,22,80,99,12,68,99,79,22,84,16,45,25,51,4,20,95,4,51,43,13,89,2,91,48,2,46,55,24,84,8,88,10,98,46,57,15,27,7,1,19,20,63,24,50,13,63,13,59,19,13,53,75,8,20,8,44,44,21,5,11,76,9,21,2,11,27,61,6,12,72,22,40,11,9,50,18,2,38,21,78,18,13,99,9,74,5,22,30,35,5,16,34,91,55,4,19,28,42,21,62,12,74,94,16,40,2,95,54,21,2,23,56,34,9,49,47,14,39,9,65,35,53,23,25,68,15,95,25,70,27,3,33,2,31,17,40,60,24,94,34,6,99,9,92,1,92,7,49,32,8,46,47,13,37,15,11,2,15,24,8,73,8,21,64,19,74,24,5,60,9,21,47,12,12,72,18,39,90,16,6,85,13,71,19,14,24,2,65,11,51,9,19,23,34,12,9,88,77,17,6,72,19,79,39,19,21,95,87,24,91,53,7,29,20,25,11,39,38,24,72,6,1,97,15,87,11,77,64,17,57,95,9,85,19,77,8,18,97,8,39,49,4,16,81,12,36,7,7,81,22,52,56,22,47,42,4,46,75,21,19,85,37,22,90,20,10,56,24,85,55,4,91,7,22,86,1,89,13,68,35,14,27,35,9,44,79,12,42,20,16,28,89,11,57,10,60,15,13,95,3,48,24,90,86,51,18,8,71,11,80,91,5,4,93,9,80,94,9,31,7,6,90,6,57,18,19,41,69,57,8,3,42,21,16,5,79,9,13,56,99,98,19,22,85,14,35,12,21,69,16,23,3,5,78,68,2,24,12,35,36,24,93,72,12,16,7,7,19,56,8,69,45,94,18,49,44,61,21,25,19,96,7,13,27,50,76,14,5,60,4,11,90,60,9,31,85,17,11,18,74,37,20,53,53,1,42,93,66,24,10,10,73,36,19,84,14,87,71,18,64,58,3,9,70,14,10,62,81,25,19,52,5,3,78,10,66,84,84,14,66,9,19,81,8,56,11,7,39,84,31,98,22,25,56,4,12,43,78,20,19,43,88,23,10,62,90,22,38,29,5,29,32,20,14,1,3,44,13,92,79,11,59,22,77,38,3,83,18,22,37,24,32,8,19,47,20,23,32,14,72,80,24,37,33,20,8,12,17,31,20,13,51,68,65,19,31,1,1,47,88,15,31,25,94,4,11,95,87,16,77,86,92,3,2,48,39,52,62,22,63,1,70,18,61,78,14,12,50,75,10,30,2,10,96,13,58,87,9,90,3,83,5,13,28,3,67,66,21,46,10,1,70,64,8,10,50,13,22,93,3,58,13,58,2,69,1,44,2,18,22,61,61,25,36,20,7,31,6,2,7,29,2,27,22,93,16,25,8,79,93,22,2,29,27,12,56,48,34,6,40,14,13,8,14,2,8,64,32,19,18,99,22,83,83,79,16,84,58,22,88,19,31,18,35,18,31,85,20,30,16,75,16,46,16,65,16,3,44,6,2,65,97,24,40,20,25,31,88,14,66,20,13,11,76,18,43,67,13,92,47,9,81,78,20,51,12,7,43,17,24,99,14,4,89,13,84,48,13,60,13,51,23,66,7,61,19,91,17,72,64,48,10,74,13,85,8,76,11,72,3,32,22,37,80,44,18,86,50,71,5,36,21,76,23,64,23,61,40,62,24,61,0,0,21,21,1,10,1,0,0,0,0,0,0
diff --git a/19/input/15-eskil b/19/input/15-eskil
deleted file mode 100644
index 834f639..0000000
--- a/19/input/15-eskil
+++ /dev/null
@@ -1 +0,0 @@
-3,1033,1008,1033,1,1032,1005,1032,31,1008,1033,2,1032,1005,1032,58,1008,1033,3,1032,1005,1032,81,1008,1033,4,1032,1005,1032,104,99,101,0,1034,1039,101,0,1036,1041,1001,1035,-1,1040,1008,1038,0,1043,102,-1,1043,1032,1,1037,1032,1042,1105,1,124,101,0,1034,1039,102,1,1036,1041,1001,1035,1,1040,1008,1038,0,1043,1,1037,1038,1042,1106,0,124,1001,1034,-1,1039,1008,1036,0,1041,102,1,1035,1040,1001,1038,0,1043,1001,1037,0,1042,1106,0,124,1001,1034,1,1039,1008,1036,0,1041,1001,1035,0,1040,1001,1038,0,1043,1002,1037,1,1042,1006,1039,217,1006,1040,217,1008,1039,40,1032,1005,1032,217,1008,1040,40,1032,1005,1032,217,1008,1039,7,1032,1006,1032,165,1008,1040,5,1032,1006,1032,165,1102,1,2,1044,1105,1,224,2,1041,1043,1032,1006,1032,179,1101,0,1,1044,1105,1,224,1,1041,1043,1032,1006,1032,217,1,1042,1043,1032,1001,1032,-1,1032,1002,1032,39,1032,1,1032,1039,1032,101,-1,1032,1032,101,252,1032,211,1007,0,27,1044,1106,0,224,1102,1,0,1044,1106,0,224,1006,1044,247,101,0,1039,1034,101,0,1040,1035,102,1,1041,1036,1001,1043,0,1038,102,1,1042,1037,4,1044,1106,0,0,13,3,18,86,2,10,5,16,95,16,54,4,23,63,70,10,21,20,26,99,85,9,96,3,83,5,9,91,14,1,4,78,11,15,53,10,35,13,7,17,30,90,23,65,65,67,16,4,65,39,11,57,13,36,22,95,53,63,22,47,12,47,2,12,3,71,92,17,55,16,51,79,6,3,92,15,17,15,18,63,8,12,3,49,6,69,32,1,25,83,17,12,1,76,23,95,17,13,92,13,56,16,69,94,11,20,31,83,30,21,88,22,61,45,6,70,12,3,30,23,86,6,93,4,24,9,73,72,7,72,83,9,30,6,24,86,99,11,11,96,16,68,10,35,19,23,6,79,51,8,3,8,75,2,32,26,73,23,80,30,86,25,64,46,24,81,20,18,85,7,94,28,37,93,18,12,77,99,14,22,19,50,2,18,45,63,8,2,89,79,79,7,33,77,18,20,22,12,58,61,20,4,58,20,51,79,14,32,19,87,21,19,76,8,81,7,13,72,75,22,28,22,14,92,30,18,90,10,6,97,25,34,9,20,26,52,45,6,4,97,4,46,26,86,61,20,25,28,26,22,54,69,16,51,3,58,5,23,75,92,18,98,12,11,55,38,22,87,14,20,17,52,73,9,91,30,14,26,12,56,81,54,9,72,18,12,47,93,22,54,21,59,73,7,78,12,87,26,5,39,45,4,55,16,21,86,62,20,98,61,14,20,70,14,25,92,32,44,2,3,15,32,23,23,97,76,78,15,23,95,21,11,69,34,12,89,3,95,24,15,59,38,39,72,14,15,55,48,18,2,43,26,13,58,68,11,22,89,33,79,22,43,40,14,26,5,50,11,28,9,36,33,2,22,43,21,90,15,92,14,14,49,9,80,14,85,99,70,8,16,14,15,70,1,39,32,45,5,57,12,12,4,99,75,28,14,2,28,71,5,69,61,4,28,98,97,87,10,80,2,65,93,6,21,81,7,95,22,35,18,38,23,11,53,14,5,2,84,3,70,33,19,8,52,10,99,14,58,36,1,3,30,53,4,7,47,10,93,2,32,17,40,68,43,20,41,4,16,21,29,23,82,2,18,37,37,15,19,26,41,28,9,95,17,17,52,25,13,49,28,47,22,5,52,14,21,72,83,7,17,86,20,3,18,58,14,19,25,56,65,65,26,53,8,20,75,31,21,40,17,6,33,20,95,47,24,75,26,17,96,24,48,65,97,4,52,20,78,47,14,23,77,32,8,18,98,43,7,61,25,84,40,6,36,24,87,24,71,77,13,20,49,16,60,35,9,64,48,21,2,74,25,1,2,57,11,58,7,45,35,26,13,74,92,2,9,82,9,20,23,15,33,94,7,10,48,78,16,24,94,33,11,21,5,89,47,15,52,12,51,51,81,9,18,39,14,2,97,79,33,23,12,99,3,16,11,79,83,45,18,23,78,86,69,10,25,98,62,62,18,7,44,47,1,3,92,8,22,81,9,3,29,8,81,21,13,95,6,5,99,5,29,16,3,53,72,26,14,44,97,7,43,12,42,65,17,8,12,88,55,18,20,34,13,39,10,72,58,15,11,69,17,94,20,22,52,28,13,30,65,8,2,63,18,4,36,17,8,71,16,71,15,64,14,31,51,75,1,12,92,14,35,23,40,45,1,5,87,28,18,83,43,9,90,2,3,50,18,61,68,5,89,16,44,7,34,82,74,15,83,15,70,13,80,20,43,8,35,14,58,50,75,20,50,9,68,46,52,2,73,11,60,32,61,25,40,9,31,21,73,0,0,21,21,1,10,1,0,0,0,0,0,0 \ No newline at end of file