我只会修改变量类型![kk](https://cdn.luogu.com.cn/upload/pic/62227.png)
```cpp
template<typename T>
inline T read() {
T f = 1, x = 0; char c = getchar();
while(!isdigit(c)) {if(c == '-') f = -1; c = getchar();}
while(isdigit(c)) {x = x * 10 + c - '0'; c = getchar();}
return x * f;
}
```
读入函数调用方式为 `read<xx>()`,其中 xx 为你需要的变量类型
by Eason_AC @ 2021-02-26 00:18:32
想怎么写就怎么写
```cpp
#define isdigit(ch) (ch >= '0' && ch <= '9')
const int __S=(1<<20)+5;char __buf[__S],*__H,*__T;
char gc() {
if(__H==__T) __T=(__H=__buf)+fread(__buf,1,__S,stdin);
if(__H==__T) return -1;return *__H++;
}
template <typename T> T read(T &n) {
int f = 1; char ch = gc();
n = 0;
for (; !isdigit(ch); ch=gc()) if (ch == '-') f = -1;
for (; isdigit(ch); ch=gc()) n = (n << 3) + (n << 1) + (ch ^ 48);
return n *= f;
}
```
by PragmaGCC @ 2021-02-26 06:39:43
```cpp
struct READ{
char c,w;
inline READ(){
c=getchar();}
template<typename type>
inline READ& operator >>(register type& num){
for(w=1;'0'>c||c>'9';c=getchar())
w=c=='-'? -1:1;
for(num=0;'0'<=c&&c<='9';c=getchar())
num=num*10+(c-'0');
return num*=w,*this;
}
}cin;
```
by warzone @ 2021-02-26 07:58:25
```
inline int read()
{
char ch=getchar();
int x=0,cf=1;
while(ch<'0'||ch>'9')
{
if(ch=='-')
cf=-1;
ch=getchar();
}
while(ch>='0'&&ch<='9')
{
x=(x<<3)+(x<<1)+(ch^48);
ch=getchar();
}
return x*cf;
}
inline string reads()
{
char ch=getchar();
string s="";
while(ch<'a'||ch>'z')
ch=getchar();
while(ch>='a'&&ch<='z')
{
s+=ch;
ch=getchar();
}
return s;
}
```
by 神蝶涵光 @ 2021-02-26 11:38:56