1 条题解

  • 0
    @ 2025-8-23 16:22:33

    有一种数据类型为 __int128,它能存储最大为 212712^{127}−1的整数,而本题 a×b 最大可能为 103610^{36},正好可以用 __int128 运算。__int128 并不能用 cin 或 scanf 读入,也不能用 cout 或 printf 输出。但是输入数据不超过 101810^{18},所以我们可以先用 long long 类型读入 a,b,p,再将其转换为 __int128 类型运算;注意到 p 不超过 101810^{18},所以最终运算结果也不超过 1018110^{18}−1,我们可以把 __int128 类型的运算结果转换为long long 再输出。由此省去了写快读或快输。

    • 1

    信息

    ID
    5319
    时间
    1000ms
    内存
    256MiB
    难度
    4
    标签
    递交数
    3
    已通过
    3
    上传者