代码拉取完成,页面将自动刷新
<snippet>
<content><![CDATA[
constexpr int mod = 998244353;
namespace math {
template<typename T>
T gcd(std::initializer_list<T> args) {
T res = 0;
for (auto b : args) {
for (T tmp; b != 0; ) {
tmp = res % b, res = b, b = tmp;
}
}
return res;
}
template<typename T>
T lcm(std::initializer_list<T> args) {
T res = 1;
for (auto b : args) {
if (!b) {
return (T)0;
}
T g = std::gcd(res, b);
res = (res / g) * (res / g) * g;
}
return res;
}
template<typename T>
std::array<T, 3> exgcd(T a, T b) {
if (b == 0) {
return {a, 1, 0};
}
std::array<T, 3> r = exgcd(b, a % b);
return {r[0], r[2], r[1] - a / b * r[2]};
}
template<typename T>
T power(T a, T b, T m = mod) {
T res = 1;
for (a %= m; b > 0; b >>= 1, (a *= a) %= m) {
if (b & 1) {
(res *= a) %= m;
}
}
return res;
}
}
]]></content>
<!-- Optional: Set a tabTrigger to define how to trigger the snippet -->
<!-- <tabTrigger>hello</tabTrigger> -->
<!-- Optional: Set a scope to limit where the snippet will trigger -->
<!-- <scope>source.python</scope> -->
</snippet>
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。