快读
在某些情况下使用 scanf 也会TLE,这是我们就需要用到快读来优化输入。
原理:getchar 速度要快于 scanf ,scanf 速度要快于 cin
使用 getchar 来读入字符,并且来处理非数字输入,由于输入可能为负数,所以我们需要对符号位进行特判一下。
1 inline int read() 2 { 3 int x = 0, f = 1; 4 char c = getchar(); 5 while (c < '0' || c > '9') 6 { 7 if (c == '-') f = -1; 8 c = getchar(); 9 } 10 while (c >= '0' && c <= '9') x = x * 10 + c - '0', c = getchar(); 11 return x * f; 12 }