リードインフック
7604 ワード
リードインフック
正の整数に適用
正負の整数
じゅんすうじ
より効率的
超神読込挂
正の整数に適用
template
inline void scan_d(T &ret)
{
char c;
ret = 0;
while ((c = getchar()) < '0' || c > '9');
while (c >= '0' && c <= '9')
{
ret = ret * 10 + (c - '0'), c = getchar();
}
}
正負の整数
template
inline bool scan_d(T &ret)
{
char c;
int sgn;
if (c = getchar(), c == EOF)
{
return 0; //EOF
}
while (c != '-' && (c < '0' || c > '9'))
{
c = getchar();
}
sgn = (c == '-') ? -1 : 1;
ret = (c == '-') ? 0 : (c - '0');
while (c = getchar(), c >= '0' && c <= '9')
{
ret = ret * 10 + (c - '0');
}
ret *= sgn;
return 1;
}
template
inline void print_d(T x)
{
if (x > 9)
{
print_d(x / 10);
}
putchar(x % 10 + '0');
}
じゅんすうじ
int Scan()
{ //
int res = 0, flag = 0;
char ch;
if ((ch = getchar()) == '-')
{
flag = 1;
}
else if(ch >= '0' && ch <= '9')
{
res = ch - '0';
}
while ((ch = getchar()) >= '0' && ch <= '9')
{
res = res * 10 + (ch - '0');
}
return flag ? -res : res;
}
void Out(int a)
{ //
if (a < 0)
{
putchar('-');
a = -a;
}
if (a >= 10)
{
Out(a / 10);
}
putchar(a % 10 + '0');
}
int main()
{
int T, n;
scanf ("%d", &T);
while (T--)
{
n = Scan();
Out(n);
printf("
");
}
return 0;
}
より効率的
struct FastIO
{
static const int S = 100 << 1;
int wpos;
char wbuf[S];
FastIO() : wpos(0) {}
inline int xchar()
{
static char buf[S];
static int len = 0, pos = 0;
if (pos == len)
{
pos = 0;
len = (int)fread(buf, 1, S, stdin);
}
if (pos == len)
{
return -1;
}
return buf[pos++];
}
inline int xint()
{
int s = 1, c = xchar(), x = 0;
while (c <= 32)
{
c = xchar();
}
if (c == '-')
{
s = -1;
c = xchar();
}
for (; '0' <= c && c <= '9'; c = xchar())
{
x = x * 10 + c - '0';
}
return x * s;
}
~FastIO()
{
if (wpos)
{
fwrite(wbuf, 1, wpos, stdout);
wpos = 0;
}
}
} io;
超神読込挂
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include