advent-of-code/2023/5/main-1.cpp
eriedaberrie bfbb6be358 2023 day 5
I did not have fun

These problems were very unenjoyable imo (skill issue probably)
2023-12-04 22:31:19 -08:00

44 lines
817 B
C++

#include <bits/stdc++.h>
using namespace std;
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
cin.ignore(6);
string line;
getline(cin, line);
istringstream sls(line);
vector<long> seeds;
vector<bool> done;
while (!sls.eof()) {
long n;
sls >> n;
seeds.push_back(n);
done.push_back(false);
}
cin.ignore(1);
for (int mapn = 0; mapn < 7; mapn++) {
cin.ignore(500, '\n');
for (;;) {
getline(cin, line);
if (line.empty() || cin.eof()) {
break;
}
istringstream sls(line);
long d, s, r;
sls >> d >> s >> r;
for (int i = 0; i < seeds.size(); i++) {
if (!done[i] && seeds[i] >= s && seeds[i] < s + r) {
seeds[i] += d - s;
done[i] = true;
}
}
}
fill(done.begin(), done.end(), false);
}
cout << *min_element(seeds.begin(), seeds.end()) << endl;
}