fread读入挂and普通读入挂and浮点数读入挂
fread读入挂
版本一
```
namespace fastIO {
#define BUF_SIZE 100000
//fread -> read
bool IOerror = 0;
inline char nc() {
static char buf[BUF_SIZE], *p1 = buf + BUF_SIZE, *pend = buf + BUF_SIZE;
if(p1 == pend) {
p1 = buf;
pend = buf + fread(buf, 1, BUF_SIZE, stdin);
if(pend == p1){
IOerror = 1;
return -1;
}
}
return *p1++;
}
inline bool blank(char ch) {
return ch == ' ' || ch == '\n' || ch == '\r' || ch == '\t';
}
template
inline void read(T &x) {
char ch;
while(blank(ch = nc()));
if(IOerror)
return;
for(x = ch - '0'; (ch = nc()) >= '0' && ch using namespace fastIO;
<br>
版本二
struct FastIO {
static const int S = 1e7;
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 = fread(buf, 1, S, stdin);
if (pos == len) exit(0);
return buf[pos++];
}
inline int xuint() {
int c = xchar(), x = 0;
while (c <= 32) c = xchar();
for (; '0' <= c && c <= '9'; c = xchar()) x = x * 10 + c - '0';
return x;
}
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;
}
inline void xstring(char *s) {
int c = xchar();
while (c <= 32) c = xchar();
for (; c > 32; c = xchar()) * s++ = c;
s = 0;
}
inline void wchar(int x) {
if (wpos == S) fwrite(wbuf, 1, S, stdout), wpos = 0;
wbuf[wpos++] = x;
}
inline void wint(LL x) {
if (x < 0) wchar('-'), x = -x;
char s[24];
int n = 0;
while (x || !n) s[n++] = '0' + x % 10, x /= 10;
while (n--) wchar(s[n]);
wchar('\n');
}
inline void wstring(const char s) {
while (s) wchar(s++);
}
~FastIO() {
if (wpos) fwrite(wbuf, 1, wpos, stdout), wpos = 0;
}
} io;
<br>
版本三
inline char nc(){
static char buf[100000],p1=buf,p2=buf;
return p1p2&&(p2=(p1=buf)+fread(buf,1,100000,stdin),p1p2)?EOF:p1++;
}
inline int _read(){
char ch=nc();int sum=0;
while(!(ch>='0'&&ch<='9'))ch=nc();
while(ch>='0'&&ch<='9')sum=sum10+ch-48,ch=nc();
return sum;
}
<br>
版本四
include
include
using namespace std;
const int maxx=40000008;
char Input[maxx+5],*ipos;
define read() (strtol(ipos,&ipos,10))
int main() {
fread(Input,maxx,1,stdin);ipos=Input;
int n=read();
//Do something......
return 0;
}
<br>
版本五
const int STRSIZE=int(4e7);
char in1[STRSIZE];
char in=in1, tempend;
void Input() {
tempend=in+STRSIZE;
fread(in,1,STRSIZE,stdin);
}
inline void scan(int &x) {
char c=(in++);
while(!(c>='0' && c<='9')) c=(in++);
x=c-'0';
c=(in++);
while(c>='0' && c<='9') {
x=x10+c-'0';
c=*(in++);
}
}
<br>
版本六
const int BufferSize=1<<16;
char buffer[BufferSize],head,tail;
inline char Getchar() {
if(headtail) {
int l=fread(buffer,1,BufferSize,stdin);
tail=(head=buffer)+l;
}
return *head++;
}
inline int read() {
int x=0,f=1;char c=Getchar();
for(;!isdigit(c);c=Getchar()) if(c'-') f=-1;
for(;isdigit(c);c=Getchar()) x=x10+c-'0';
return xf;
}
inline void write(int x){
if(x>=10)write(x/10);
putchar(x%10+'0');
}
<br>
版本七
namespace IO {
const int MX = 4e7; //1e7占用内存11000kb
char buf[MX]; int c, sz;
void begin() {
c = 0;
sz = fread(buf, 1, MX, stdin);
}
inline bool read(int &t) {
while(c < sz && buf[c] != '-' && (buf[c] < '0' || buf[c] > '9')) c++;
if(c >= sz) return false;
bool flag = 0; if(buf[c] == '-') flag = 1, c++;
for(t = 0; c < sz && '0' <= buf[c] && buf[c] <= '9'; c++) t = t * 10 + buf[c] - '0';
if(flag) t = -t;
return true;
}
}
<br>
版本八
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;
<br>
版本九:
namespace fastio{
int ptr, ye, Siz;
char temp[25], str[8333667], out[8333669];
void io_init(){
ptr = 0, ye = 0;
Siz = fread(str, 1, 8333667, stdin);
}
inline int read(){
int i, j, val = 0, fla = 1;
while (ptr<Siz&&(str[ptr] < 48 || str[ptr] > 57)) ptr++;
if(ptr>=Siz)return -1;
while (str[ptr] > 47 && str[ptr] < 58) fla = 0,val = (val * 10) + (str[ptr++] - 48);
if(fla)return -1;
return val;
}
inline void convert(long long x,bool flag){
int i, d = 0;
for (;
最新文章
- 动画的使用&mdash;Drawable Animation
- C++ mem_fun 和 mem_fun_ref 的用法
- jquery获取radio和select选中值
- 采集/自动登录啊都可以用这两个方法实现 asp.net
- Flexbox介绍
- UVA11806Cheerleaders(容斥)
- JavaScript的连续赋值的思考
- Executors线程池
- 利用拷贝data目录文件的方式迁移mysql数据库
- 【图文详解】Hadoop集群搭建(CentOs6.3)
- HTTP的一些基本概念
- vue 项目界面绘制_stylus_iconfont_swiper
- net core体系-web应用程序-4net core2.0大白话带你入门-2asp.net core新建项目
- [转]html5: postMessage解决跨域和跨页面通信的问题
- 链表(上):如何实现LRU缓存淘汰算法?
- Android 关于导航栏(虚拟按键)遮挡PopupWindow底部布局的问题
- Android: TextView 及其子类通过代码和 XML 设置字体大小的存在差异的分析
- c# 单实例运行
- CStatic控件SS_NOTIFY属性
- ossec安装
热门文章
- leetcode-164周赛-1268-搜索推荐系统
- leetcode-161周赛-5249-移除无效的括号
- 【JZOJ3674】【luoguP4042】【BZOJ3875】骑士游戏
- cocos2D-X Download
- python3 获取电脑磁盘、CPU、内存使用情况
- git ,报403错误,完美解决方案
- BZOJ 3252: 攻略(思路题)
- php 如何实现 数据库 连接池
- Invoking destroy method &#39;close&#39; on bean with name &#39;dataSource&#39;
- 【react】---Hooks的基本使用---【巷子】