必查
1.十年OI一场空,不开double见祖宗
1.有没有在计算函数值时将double
写成int
2.有没有在输入端点坐标时将x0,x1,y0,y1搞混
3.有没有注意输入需要解密+有没有记录上一次的答案
If you WA on sub1
1.注检查计算函数k,b时有没有算错
2.尝试开个long double
3.x和y要mod的值是不一样的
If you Wa on #5 #4 #16 #17
1.存函数值的变量要开double
If you Wa on #5
1.比较函数值大小是不能用>
和<
,会炸精度,要用x-y>eps
,这边附送一串比较代码
const double eps=1e-9;
int Check(double x, double y){
if (x-y>eps){
return 1;
}
if (y-x>eps){
return -1;
}
return 0;
}
2.你在判等于的时候也不能用>
和<
,这边建议你像我这样,在判完大于和小于后直接返回0
3.用pair存函数值和编号时,函数值要开double
4.k,b都要开double
If you WA on #7
1.注意特判x0==x1
的情况,在那时b取max(y0, y1)
, k取0
留在最后
前人都已经帮你们踩完坑了,你们再WA就是对不起我们那用一长串提交记录帮你们垫下的路啊QwQ