通常,在输入输出数据量很大的时候用cin,cout;scanf,printf都会超时,那怎么办呢?

于是,发明了输入输出优化。

1.输入优化

首先,先要了解一个叫getchar()的函数,是用来读入字符的,速度很快。

那么,代码就写出来了。

int read()
{
    int x,mk;//mk用来判别负数。
    char ch=getchar();//读入一个元素。
    while((ch<'9'||ch>'9')&&ch!='-')  ch=getchar();
    if(ch=='-')
    {
        mk=-1;//在最后x乘mk。
        ch=getchar(); 
    }
    while(ch>='0'&&ch<='9')
    {
        x=x*10+ch;//加位。
        ch=getchar();
    }
    return x*mk;
}
读入优化

注:要加#include<cstdio>

2.输出优化

我们还要知道putchar()一个输出字符的函数。

那么,代码。

void write(int x)
{
    int x1=x%10;//按位分割。
    write(x/10);//递归 
    putchar(x1+'0');//化为字符,要正序输出。 
}
输出优化
2019/4/20 第一版。编辑人——beelake。有疑问联系qq:3162233587
posted on 2019-03-17 15:56  beelake  阅读(189)  评论(0编辑  收藏  举报