___int128是一种超长整数类型,支持 -2^{127} ~2^{127}-1 这么大。
可以直接进行四则运算,但是不出现在MSVC、编译器(VS不能用),GCC和G++可以
定义
#include <bits/stdc++.h>
using namespace std;
int main()
{
__int128 a;
return 0;
}
和平常一样
输入输出就不一样了
#include <bits/stdc++.h>
using namespace std;
inline __int128 read()
{
__int128 x = 0, f = 1;
char ch = getchar();
while (ch < '0' || ch > '9')
{
if (ch == '-')
f = -1;
ch = getchar();
}
while (ch >= '0' && ch <= '9')
{
x = x * 10 + ch - '0';
ch = getchar();
}
return x * f;
}
inline void print(__int128 x)
{
if (x < 0)
{
putchar('-');
x = -x;
}
if (x > 9)
print(x / 10);
putchar(x % 10 + '0');
}
int main()
{
__int128 a = read();
__int128 b = read();
print(a + b);
return 0;
}
read是输入函数
print是输出函数
注意事项:__int128必须使用快读快些(这个就已经劝退不少人力)