目录
1.二分
https://blog.csdn.net/Mashiro_ylb/article/details/78469151
2.重载
struct node{//从小到大
int val,num;
bool operator < (const node &x) const {
return val > x.val;
}
}
3.log预处理
for(int i=1;i<=n;i++)
lg[i]=lg[i-1]+(1<<lg[i-1]==i);
4.关于printf
printf %0 八进制
%x 十六进制
%.2lf 保留两位小数
%04d 不足四位补0
5.神奇的函数
str(n)cat 连接
str(n)cpy 后覆盖前
str(n)cmp 比大小
strlen 字符数组长度
isupper 是否为大写
islower 是否为小写
toupper 转大写
tolower 转小写
max_element(a,a+n) 最大值
memcpy(b,a,sizeof(a)) a复制到b
random_shuffle(a+1,a+n+1); 随机打乱数组
rand() 随机生成一个数
6.计算星期几
W=(d+2*m+3*(m+1)/5+y+y/4-y/100+y/400)%7+1
W-星期 d-日期 m-月份 y-年份
*1月,2月看作上一年的13月,14月