acm竞赛技巧——c/c++ /java 快读快写(整数,字符串)
注意: 本文参考博客
整数
这里用int做示范,long long,__int128 改下变量类型即可
快读
inline int rd()
{
char ch=getchar();
int x=0,w=1;
//过滤掉其他字符
while(ch<'0'|| ch>'9')
{
if(ch=='-') w=-1;
ch=getchar();
}
while(ch>='0' && ch<='9')
{
//代替x=x*10+ch-'0';
x=(x<<1) + (x<<3) +(ch^48);
ch=getchar();
}
return x*w;
}
快写
inline void print(int x)
{
if(x<0)
{
putchar('-');
x=-x;
}
if(x>9) print(x/10);
putchar(x%10+'0');
}
字符串
读入
inline string rd()
{
string str="";
char ch=getchar();
//处理空格或回车
while(ch==' ' || ch=='\n' || ch=='\r')
{
ch=getchar();
}
//读入
while(ch!=' ' && ch!='\n' && ch!='\r')
{
str+=ch;
ch=getchar();
}
return str;
}
读出
inline void print(string s)
{
for(int i=0; s[i]!='\0'; i++) putchar(s[i]);
}
java快读快输
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.io.StreamTokenizer;
public class Test {
static StreamTokenizer in = new StreamTokenizer(new BufferedReader(new InputStreamReader(System.in)));
static int nextInt() throws Exception{
in.nextToken();
return (int)in.nval;
}
static int n,m;
static PrintWriter out = new PrintWriter(System.out);
public static void main(String[] args) throws Exception {
n = nextInt();
out.println(n+10);
out.flush();
}
}