第一种方法

1
2
ios::sync_with_stdio(0);
cin.tie(0), cout.tie(0);

第二种方法

scanfprintf

第三种方法

read 和 write(快读板子)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
inline int read() 
{
int x=0,f=1;
char c=getchar();
while (c<'0' || c>'9')
{
if (c=='-') f=-1;
c=getchar();
}
while (c>='0' && c<='9')
{
x=x*10+c-'0';
c=getchar();
}
return x*f;
}

inline void print(int x)
{
if (x<0)
{
putchar('-');x=-x;
}
if (x>9) print(x/10);
putchar(x%10+'0');
}

这个板子较大的优势是表现在高精度的输入输出上,因为正常高精度的输入输出,要么 string 转数组,要么 char 变量一个个读,往数组里存。有了这个板子就方便多了,输出也方便。

下面是关于 O2 优化的部分。

开启O2优化

1
#pragma GCC optimize(2)

下次记得遇到 TLE ( Time Limit Exceeded 时间超限 ) , 可以尝试加上这一行,说不定就 AC ( Accepted 答案正确 / 通过 )了呢。

那么大家有问了,洛谷开不了 O2 怎么办 ( 会 CE ( Compile Error 编译错误 )) ?

1
#pragma G++ optimize(2)

快写 (write) 不如 printf 快,请各位尽量不使用快写(因为它还经常要调输出格式)。