抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

1.对拍的时候不加srand(time(NULL))srand(time(NULL)),对拍了好久以为自己稳了,结果成绩爆00

2.这个错误比较难发现:

1
2
#define Calc(x) 1-x
printf("%d\n",Calc(1-2));

大多数人以为这个程序输出结果是22,他们是这么计算的:

x=12=1x=1-2=-1Calc(x)=Calc(1)=1(1)=2Calc(x)=Calc(-1)=1-(-1)=2

但是,别忘记definedefine是纯文本替换,所以其实是这个样子的:

Calc(x)=Calc(12)=112=4Calc(x)=Calc(1-2)=1-1-2=4

惊不惊喜,意不意外?

所以建议这么写

1
#define Calc(x) 1-(x)

3.树剖的查询和线段树的查询写反

评论