inline int read()
{
int s=0,w=1;//s表示不带负号的值, w处理负号的情况
char ch=getchar();
while (ch<'0'||ch>'9')
{
if (ch=='-') w=-w;//处理前置负号
ch=getchar();//继续读入
}
while (ch>='0'&&ch<='9')
{
s=(s<<1)+(s<<3)+(ch^'0');//我们每次末尾添加了一位,更新这个值
//比如35后面添加了一位7,那么就变成了357(即35*10+7)
//这里使用位运算加速
ch=getchar();//继续读入
}
return s*w;//返回,注意要乘上处理负号用的w
}
void output(int x)
{
if (x>9) output(x/10);//如果它的位数超过1,递归下去
putchar(x%10+'0');//最后输出它的末尾
}