_int128 的应用

一些越界数据不至于用高精度时,可以采用_int128输入输出,当然一般输出用的多

1234为例,123进入下一轮函数,4被取模留下,12进入递归,3留下,10进入递归,2留下,不再递归,输出1,回溯,输出2,回溯,输出3,回溯,输出4

赋值操作可以采用read(),也可以直接赋值,读取输出字符采用putchar getchar

__int128 read(){
    __int128 x=0,f=1;
    char ch=getchar();
    while(!isdigit(ch)&&ch!='-')ch=getchar();
    if(ch=='-')f=-1,ch=getchar();
    while(isdigit(ch))x=x*10+ch-'0',ch=getchar();
    return f*x;
}
void print(__int128 x){
    if(x<0)putchar('-'),x=-x;
    if(x>9)print(x/10);
    putchar(x%10+'0');
}

你可能感兴趣的:(NOIP)