📄 2121.cpp
字号:
/* This Code is Submitted by wywcgs for Problem 2121 on 2005-12-14 at 20:04:55 */
#include <cstdio>
const int MAX = 128;
const double eps = 1e-8;
class Point {
public:
double x, y, z;
void init();
double dist(const Point&) const;
};
void Point::init() {
scanf("%lf %lf %lf", &x, &y, &z);
}
double Point::dist(const Point& p) const {
return (x-p.x)*(x-p.x)+(y-p.y)*(y-p.y)+(z-p.z)*(z-p.z);
}
const Point CENTER = { 0.0, 0.0, 0.0 };
int main()
{
Point sate[MAX], dep[MAX];
int n, m;
int i, j;
while(scanf("%d %d", &n, &m) != EOF && n*m != 0) {
for(i = 0; i < n; i++) {
sate[i].init();
}
for(i = 0; i < m; i++) {
dep[i].init();
}
int attack = 0;
for(i = 0; i < m; i++) {
for(j = 0; j < n; j++) {
if(sate[j].dist(dep[i])+dep[i].dist(CENTER) -
sate[j].dist(CENTER) < eps) {
attack++;
break;
}
}
}
printf("%d\n", attack);
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -