Я пытаюсь решить эту https://codeforces.com/problemset/problem/2035/D проблему codeforces. Я понимаю логику и реализацию, но, видимо, не справляюсь с модульной арифметикой. Вот мой код: [code]ll modAdd(ll a, ll b, ll mod) { return (a % mod + b % mod) % mod; }
ll modSub(ll a, ll b, ll mod) { return ((a - b)%mod + mod) % mod; // Adding mod ensures non-negative result }
// Function for modular multiplication ll modMul(ll a, ll b, ll mod) { return (1LL * (a % mod) * (b % mod)) % mod; // 1LL ensures no overflow for large numbers }
// Function for modular exponentiation ll modExp(ll base, ll exp, ll mod) { ll result = 1; base = base % mod; while (exp > 0) { if (exp % 2 == 1) { result = modMul(result, base, mod); } base = modMul(base, base, mod); exp /= 2; } return result; }