王紫烨 @ 2020-07-20 21:30:33
#include <bits/stdc++.h>
using namespace std;
double x1,yep,x2,y2,x3,y3;//y1有重定义错误,所以……y1 -> yep
int main(){
cin>>x1>>yep>>x2>>y2>>x3>>y3;
cout<<fixed<<setprecision(2)<<sqrt((x1-x2)*(x1-x2)+(yep-y2)*(yep-y2))+sqrt((x3-x2)*(x3-x2)+(y3-y2)*(y3-y2))+sqrt((x1-x3)*(x1-x3)+(yep-y3)*(yep-y3))<<endl;
return 0;
}
请注意,我把所有的y1
都换成了yep
,这是因为C++
的math.h
头文件里包含了y1
,先前我重定义了!!有谁卡在这上面的吗??(lll¬ω¬)
by Haishu @ 2020-07-20 21:32:09
是,math头文件就是这么雷坑,定义了一堆很常用的东西
by JRzyh @ 2020-07-20 21:36:21
#define y1 IAKIOI
by LucasXu80 @ 2020-07-20 21:38:21
不妨用iostream+iomanip?
by LucasXu80 @ 2020-07-20 21:38:41
还有定义在主函数里应该不会报错了吧(
by 断清秋 @ 2020-07-20 21:39:28
不会吧?不会真有人开了math还用y1吧?(不会吧?不会真有人用math头文件吧)
by LucasXu80 @ 2020-07-20 21:39:59
@断清秋 从不用bits的我天天用。。。
by ADay @ 2020-07-20 21:40:51
可以参照rqy的做法,用命名空间
by ADay @ 2020-07-20 21:41:25
比如 https://www.luogu.com.cn/blog/rqy/solution-p3960 的代码
by 142857cs @ 2020-07-20 21:58:43
#define y1 noip
by 王紫烨 @ 2020-07-20 22:00:16
#define 不会吧 还真会呢