From 96254947699986c59f0dc63d69fd4b76bd3ed43e Mon Sep 17 00:00:00 2001 From: Sebastiano Tronto Date: Mon, 6 Jul 2026 19:08:08 +0200 Subject: Initial commit --- .../bouncing_ball_steps_3215.cpp | 24 ++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 18_additional_problems_ii/bouncing_ball_steps_3215.cpp (limited to '18_additional_problems_ii/bouncing_ball_steps_3215.cpp') diff --git a/18_additional_problems_ii/bouncing_ball_steps_3215.cpp b/18_additional_problems_ii/bouncing_ball_steps_3215.cpp new file mode 100644 index 0000000..b09bba2 --- /dev/null +++ b/18_additional_problems_ii/bouncing_ball_steps_3215.cpp @@ -0,0 +1,24 @@ +#include +#include +#include +#include + +typedef long long ll; + +std::tuple f(ll n, ll m, ll k) { + n--; m--; + ll am{k % (2*n)}, ad{k / n}, bm{k % (2*m)}, bd{k / m}; + if (am > n) am = n - (am-n); + if (bm > m) bm = m - (bm-m); + return {am, bm, ad+bd-k/std::lcm(n, m)}; +} + +int main() { + ll t, n, m, k; + std::cin >> t; + for (ll i = 0; i < t; i++) { + std::cin >> n >> m >> k; + auto [a, b, c] = f(n, m, k); + std::cout << a+1 << " " << b+1 << " " << c << "\n"; + } +} -- cgit v1.3