lab12(euler)
#include <iostream> #include <cmath> using namespace std; long long gcd(long long a, long long b) { if (b == 0) return a; return gcd(b, a % b); } long long eulerTotient(long long n) { long long result = n; for (long long i = 2; i * i <= n; i++) { if (n % i == 0) { while (n % i == 0) n /= i; result -= result / i; } } if (n > 1) result -= result / n; return result; } long long modExp(long long base, long long exp, long long mod) { long long result = 1; base =...