A 重心在哪里
题目描述
每个人都知道牛顿发现万有引力的故事。自从牛顿发现万有引力后,人们用万有引力理论解决了非常多的问题。不仅如此,我们也知道了每个物体都有自己的重心。
现在,给你三角形三个顶点的坐标,你能计算出三角形的重心吗?
输入
题目包含多组测试数据。第一行输入一个正整数n,表示测试数据的个数,当n=0时,输入结束。
接下来n行,每行包含6个数字x1,y1,x2,y2,x3,y3,表示三角形三个顶点的坐标。
输出
对于每组输入,输出重心的坐标,结果保留1位小数。
样例输入
2
1.0 2.0 3.0 4.0 5.0 2.0
1.0 1.0 4.0 1.0 1.0 5.0
0
样例输出
3.0 2.7
2.0 2.3
代码提交
#include<cstdio>
#include<utility>
using namespace std;
int main(){
pair<double,double> p[3];
int n;
while(scanf("%d",&n)!=EOF){
for(int i=0;i<n;i++){
pair<double,double>x(0,0);
for(int i=0;i<3;i++){
scanf("%lf%lf",&p[i].first,&p[i].second);
x.first+=p[i].first;
x.second+=p[i].second;
}
printf("%0.1f %0.1f\n",x.first/3,x.second/3);
}
}
}
笔记
pair其实就相当于把两个元素绑在一块了,与其他的区别有头文件得是,用法比较简单。