| 53 | |
| 54 | template <typename T> T sqr(T x) { return x * x; } |
| 55 | template <typename T> T abs(T x) { return x < 0 ? -x : x; } |
| 56 | template <typename T> T gcd(T a, T b) { return b ? gcd(b, a % b) : a; } |
| 57 | template <typename T> bool chmin(T &x, const T& y) { if (x > y) { x = y; return true; } return false; } |
| 58 | template <typename T> bool chmax(T &x, const T& y) { if (x < y) { x = y; return true; } return false; } |
no outgoing calls
no test coverage detected