C++黑科技

  • __int128

    可以表示$[-2^{127},2^{127}-1]$内的整数

    支持unsigned(就变成了$[0,2^{128}-1]$)

    输出有些麻烦($O(log_{10}n)$)

    1
    2
    3
    4
    5
    6
    7
    void print(__int128 x)
    {
    if(!x)
    return;
    print(x/10);
    printf("%d",int(x%10));
    }

    可以用普通的快速输出,反正只是常数区别