diff --git a/2023/6/main-1.cpp b/2023/6/main-1.cpp new file mode 100644 index 0000000..f2d472f --- /dev/null +++ b/2023/6/main-1.cpp @@ -0,0 +1,39 @@ +#include +using namespace std; + +inline int solve(int time, int distance) { + int ways = 0; + for (int i = 0; i <= time; i++) { + if (i * (time - i) > distance) { + ways++; + } + } + + return ways; +} + +int main() { + ios::sync_with_stdio(0); + cin.tie(0); + + vector times, distances; + string line, line2; + getline(cin, line); + getline(cin, line2); + istringstream s1s(line), s2s(line2); + s1s.ignore(500, ':'); + s2s.ignore(500, ':'); + while (!s1s.eof()) { + int n; + s1s >> n; + times.push_back(n); + s2s >> n; + distances.push_back(n); + } + + int ret = 1; + for (int i = 0; i < distances.size(); i++) { + ret *= solve(times[i], distances[i]); + } + cout << ret << '\n'; +} diff --git a/2023/6/main-2.cpp b/2023/6/main-2.cpp new file mode 100644 index 0000000..a7f1056 --- /dev/null +++ b/2023/6/main-2.cpp @@ -0,0 +1,32 @@ +#include +using namespace std; + +inline long solve(long time, long distance) { + long ways = 0; + for (long i = 0; i <= time; i++) { + if (i * (time - i) > distance) { + ways++; + } + } + + return ways; +} + +int main() { + ios::sync_with_stdio(0); + cin.tie(0); + + long time, distance; + string line, line2; + getline(cin, line); + line.erase(remove(line.begin(), line.end(), ' '), line.end()); + istringstream s1s(line); + s1s.ignore(500, ':'); + s1s >> time; + getline(cin, line); + line.erase(remove(line.begin(), line.end(), ' '), line.end()); + istringstream s2s(line); + s2s.ignore(500, ':'); + s2s >> distance; + cout << solve(time, distance) << '\n'; +}