栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

zoj 3409 KKV

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

zoj 3409 KKV

#include <iostream>#include <cmath>#include <cstdio>#include <cstdlib>#include <cstring>using namespace std;const double eps = 1e-10;inline double sqr(double x){return x*x;}struct point{  double x, y, z;  void input(){    scanf("%lf%lf%lf", &x, &y, &z);  }}p[50];struct vect{  double x, y, z, mod;  void init(point p, point q){    x = q.x - p.x; y = q.y - p.y; z = q.z - p.z;    mod = sqrt(sqr(x) + sqr(y) + sqr(z));  }  double cal(){    return mod = sqrt(sqr(x) + sqr(y) + sqr(z));  }}vec[50], v[50];double scalar(vect a, vect b){  return a.x * b.x + a.y * b.y + a.z * b.z;}void function(double a, double b, double c, bool &mark, double &k){  double det = sqr(b) - 4 * a * c;  if (det < eps && fabs(det) > eps){    mark = false; return;  }  else {    mark = true; k = (-b + sqrt(det)) / (2.0 * a);    return;  }}void solve(int n){  double m, m1, mt, m0, v0, k, t = 0.0; int i;  scanf("%lf%lf%lf%lf", &m, &m1, &m0, &v0);  p[0].x = p[0].y = p[0].z = 0.0;  for (i = 1; i <= n; ++i){    p[i].input(); vec[i-1].init(p[i-1], p[i]);  }  mt = m - m0;  k = sqrt(sqr(m0) * sqr(v0) / (sqr(mt) * sqr(vec[0].mod)));  v[0].x = k * vec[0].x; v[0].y = k * vec[0].y; v[0].z = k * vec[0].z;  t += (vec[0].mod / v[0].cal());  for (i = 1; i < n; ++i){    double a, b, c, k1;    a = sqr(mt - m0) * sqr(vec[i].mod);    b = -2 * mt * (mt - m0) * scalar(vec[i], v[i-1]);    c = -sqr(m0) * v0 * v0 + sqr(mt) * sqr(v[i-1].cal());    bool mark = false;    function(a, b, c, mark, k1);    if (mark){      if (k1 > 0) k = k1;      v[i].x = k * vec[i].x; v[i].y = k * vec[i].y; v[i].z = k * vec[i].z;      t += (vec[i].mod / v[i].cal());    }    else {      printf("Another kind of KKV.n"); return;    }    mt -= m0;  }  printf("%.2lfn", t);}int main(void){  int n;   while (~scanf("%d", &n)){    solve(n);  }  return 0;}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/363304.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号