String fileName = "input.txt";
BufferedReader reader;
void setup() {
reader = createReader(fileName);
println(day1_1());
// answer 3371958
reader = createReader(fileName);
println(day1_2());
//answer 5055050
}
int day1_1() {
boolean ready = false;
String line;
int fuel = 0;
while (!ready) {
try {
line = reader.readLine();
}
catch (IOException e) {
line = null;
ready = true;
}
if (line == null) {
ready = true;
} else {
int tempFuel = module(int(line));
fuel += tempFuel;
}
}
return fuel;
}
int day1_2() {
IntList modules = new IntList();
boolean ready = false;
String line;
int totalFuel = 0;
int moduleFuel = 0;
while (!ready) {
try {
line = reader.readLine();
}
catch (IOException e) {
line = null;
ready = true;
}
if(line != null) {
//println(line);
moduleFuel = module(int(line));
int tempFuel = moduleFuel;
while (tempFuel > 0) {
tempFuel = module(tempFuel);
if (tempFuel > 0)
moduleFuel += tempFuel;
}
modules.append(moduleFuel);
} else {
ready = true;
}
}
for(int values : modules)
totalFuel += values;
return totalFuel;
}
int module(int fuel) {
return floor(fuel / 3) - 2;
}
Comments