我的码风
我的码风
1. 头文件
缺省源里是 #include,用的时候缺啥补啥。
2. 输入输出
写个快读快写,然后 n=re();wr(n),putchar('\n');
int re()
{
int s=0,f=1;char ch=getchar();
while(ch>'9'||ch<'0')
{
if(ch=='-')f=-1;
ch=getchar();
}
while(ch>='0'&&ch<='9')
s=s*10+ch-48,ch=getchar();
return s*f;
}
void wr(int s)
{
if(s<0)putchar('-'),s=-s;
if(s>9)wr(s/10);
putchar(s%10+48);
}
3. 大括号
单独一行,例如:
for(int i=fir[now];i;i=nex[i])
{
int p=poi[i];
...
...
...
}
但是只有一个语句不加大括号,如:
for(int i=1;i<=n;i++)
a[i]=re();
4. 函数
喜欢手打小函数,而不是加头文件:
int max(int a,int b){return a>b?a:b;}
int swap(int &x,int &y){x^=y^=x^=y;}
而那种不被多次调用的(如 SPFA,倍增求 lca 的统计 \(2^k\) 级祖先)喜欢直接写在 main 中。
不用 namespace,我是绝对不可能告诉你是因为我不会才不用的。
5. 结构体
只定义变量,构造函数和重载运算符,函数什么的写在外边。
特指树剖时的线段树。
6. 变量名
中规中矩的中英结合,如 pd,dis,val,小函数中多用单变量名,大函数会根据意思设置变量名。
7. 宏
用过两处:define int long long (懒)和 define IT set(珂朵莉树),前者写在头文件与名字空间之间,后者写在 Chtholly 结构体的下边。
8. STL
虽然常数大,但是经常用,比较懒。
9. 压行
不严重的压行习惯,(压但不完全压)。
不过不习惯有空行存在。
贴几个比较长的代码吧,感觉有纪念意义的。
CYaRon!语
Peaks
旅游
序列