acm中怎样用getchar()代替scanf()提高速度?

来源:百度知道 编辑:UC知道 时间:2024/06/06 17:38:37

inline void read(int &data) {
char ch = getchar();
while (ch < '0' || ch > '9') ch = getchar();
data = 0;
do{
data = data*10 + ch-'0';
ch = getchar();
}while (ch >= '0' && ch <= '9');
}

int a;
read(a); == scanf("%d",&a);

不论是getchar还是scanf,都是阻塞式的输入,无速度可言,都是看人为的输入快不快。
请问超时报错是什么样的?

细读了一下题目,这是我的答案,请看是否正确,谢谢!
#include <stdio.h>
#include <stdlib.h>
int JudgeAlike(int a[6], int b[6]);
void main()
{
int i = 0, j = 0;
int n = 0;
int iMatchFlag = 0; //相同雪花标志
int (*pSnowFlake)[6] = NULL; //保存雪花的6片值

scanf("%d", &n);
if (n < 2)
{
printf("No two snowflakes are alike.\n");
return;
}
for (i = 0; i < n; ++i)
{
pSnowFlake = (int (*)[6])realloc(pSnowFlake