#ifndef ONLINE_DRIVER_COMMON_HPP #define ONLINE_DRIVER_COMMON_HPP namespace ck_driver { inline auto get_ck_hip_online_compile_common_flag() { std::string param = " -std=c++17"; return param; } // greatest common divisor, aka highest common factor inline int gcd(int x, int y) { if(x < 0) { return gcd(-x, y); } else if(y < 0) { return gcd(x, -y); } else if(x == y || x == 0) { return y; } else if(y == 0) { return x; } else if(x > y) { return gcd(x % y, y); } else { return gcd(x, y % x); } } template = 2, bool>::type = false> auto gcd(X x, Ys... ys) { return gcd(x, gcd(ys...)); } } // namespace ck_driver #endif