读入优化(程序填空)

提交数: 53, 通过率: 83.02%, 平均分: 83.02

题目描述:

有时候我们需要输入大量的数据,如果使用cin或者scanf会因为效率较低导致程序运行超时,这时候就需要使用读入优化了,同理也需要输出优化。完善下面的程序,使得程序能快速读入数字。

输入格式:

一个整数n < 1000000

下面一行是n个整数,每个整数大于-1000,并且小于1000

输出格式:

输出上述的n个整数的累加和

样例输入:

10
1 2 3 4 5 6 7 8 9 10

样例输出:

55

提示:

请完善程序。

#include<bits/stdc++.h>
using namespace std;
int a[ 1000007 ];

int read( ){
	int x=0, f=1;
	char ch= ____(1)_____;
	while ( ( ch <'0') || ( ch>'9') ) {
		if (ch=='-') ___(2)____;
		ch = getchar();
	}
	while (  ch>='0' && ch<='9' ) {
		x = (x<<1) + (x<<3) + ____(3)______;
		ch = getchar();
	}
	return ___(4)_____;       //f=-1时,表示读取的是负数
}

void write( int x ) {
	if( x<0 ) {
		putchar( '-' );
		x = -x;
	}
	if( x>9 ) write( ____(5)_____ );
	putchar( x % 10 + '0' );
}

int main() {
    int ans=0;
    int n;
    n = read( );
    for(int i=0;i<n;i++)
    {
        ____(6)______
        ans += a[i];
    }
    write(  ans );
}
时间限制: 1000ms
空间限制: 256MB

来源: 原创