读入优化(程序填空)
提交数: 54, 通过率: 83.33%, 平均分: 83.33
题目描述:
有时候我们需要输入大量的数据,如果使用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
来源: 原创