关于我的玄学做法
查看原帖
关于我的玄学做法
362750
TernaryTree楼主2022/9/28 21:39

代码

我没用小数,用的自己做的分数类,然后发现没高精会炸掉,就突发奇想,在分数约分的时候,如果大于了某个值,就自动舍弃一部分精度:

void reduct() {
    if (a == 0 && b == 0) return;
    if (a >= 1e15 || b >= 1e15) {
        a = (int) ((double) a * 1e15 / b);
        b = (int) 1e15;
    }
    if (b < 0) a = -a, b = -b;
    int g = gcd(abs(a), abs(b));
    a /= g, b /= g;
}

这个值我调到 10910^9 只对了 33 个点,101210^{12} 对了 88 个,101510^{15} 才 AC。想问下这个值和什么有关系。

2022/9/28 21:39
加载中...