点击打开链接

1416: Kick Ass Biu [几何]

时间限制: 1 Sec 内存限制:
128 MB



提交: 174 解决:
35 统计

题目描述

在玩Kick Ass的时候,可以发现子弹的发射与飞船的移动非常有趣。

假设屏幕是个[Math Processing Error]n×m(竖直为n,水平为m)的矩形,以矩形左下角为原点,水平方向为x轴,向右为正方向,竖直方向为y轴,像上为正方向,建立平面直角坐标系。你的飞船在(x1,y1)点,射击目标在(x2,y2),你向目标发出了一发子弹,然而由于网页卡顿,这枚子弹并不会触碰到目标。所以,子弹将以每秒v单位的速度继续前进,若子弹移动到屏幕边缘,将自动传送到另一边并继续移动。如:向右移动到(m,0)则下一刻从(0,0)开始继续移动,同理向上移动到(0,n)则下一刻从(0,0)开始继续移动。

现在给出nm(x1,y1)(x2,y2)v,能否通过编程回答第t秒子弹的坐标?

输入

多组测试数据,请处理到文件结束。

第一行是两个正整数nm

第二行是六个正整数x1y1x2y2vt

[Math Processing Error]0<n,m<100000

[Math Processing Error]0<x1,y1,x2,y2,v,t<100000

输出

对于每组测试数据请在一行输出第t秒子弹的坐标xy,中间用一个空格隔开。

结果四舍五入保留到小数点后一位

样例输入

3 3
1 1 1 2 1 1
3 3
1 1 1 2 1 2
3 3
1 1 1 2 1 3

样例输出

1.0 2.0
1.0 0.0
1.0 1.0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include<cstdio>
#include<cmath>
double

dis(
double

x1,
double

y1,
double

x2,
double

y2) {
    return

sqrt
((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
}
double

change(
double

x,
double

t) {
    while(x>=t)
{
        x-=t;
    }
    return

x;
}
double

tabs(
double

m) {
    return

m>0?m:-m;
}
int

main() {
    double

n,m;
    while(scanf("%lf
%lf"
,&n,&m)!=EOF)
{
        double

x1,y1,x2,y2,v,t;
        scanf("%lf
%lf %lf %lf %lf %lf"
,&x1,&y1,&x2,&y2,&v,&t);
        double

s=v*t;
        double

st=dis(x1,y1,x2,y2);
        double

lx=tabs(x2-x1)*(s/st);
        if(x2>x1)
            lx=change(lx+x1,m);
        else
            lx=m-change(m-x1+lx,m);
        double

ly=tabs(y2-y1)*(s/st);
        if(y2>y1)
            ly=change(ly+y1,n);
        else
            ly=n-change(n-y1+ly,n);
        printf("%.1lf
%.1lf\n"
,lx,ly);
//四舍五入保留小数点后一位
    }
    return

0;
}
 
/**************************************************************
    Problem:
1416
    User:
BoilTask
    Language:
C++
    Result:
正确
    Time:132
ms
    Memory:840
kb
****************************************************************/

1416: Kick Ass Biu [几何]的更多相关文章

  1. 关于Three.js基本几何形状之SphereGeometry球体学习

    一.有关球体SphereGeometry构造函数参数说明 <1>.SphereGeometry(radius, widthSegments, heightSegments, phiStar ...

  2. BZOJ1098: [POI2007]办公楼biu

    从问题可以看出是求补图的连通块及点数 但补图太大.所以考虑缩小规模. 当一个点归属于一个连通块后,它以后就不需要了.所以可以用链表,删去这个点,也就减小了规模. 一个点开始bfs,每个点只会进队一次, ...

  3. 几何服务,cut功能测试

    关于几何服务 几何服务用于辅助应用程序执行各种几何计算,如缓冲区.简化.面积和长度计算以及投影.在 ArcGIS Server 管理器中启动几何服务之后,您才能够在应用程序开发过程中使用该服务. 问题 ...

  4. 几何服务,cut功能,输入要素target(修改后)内容。

    几何服务,cut功能测试,输入要素target(修改后)内容. {"displayFieldName":"","fieldAliases": ...

  5. 几何服务,cut功能,输入要素target(修改前)内容。

    几何服务,cut功能测试,输入要素target(修改前)内容. {"geometryType":"esriGeometryPolyline","geo ...

  6. 如何让你的UWP应用程序无缝调用几何作图

    有时候需要编辑一些几何图形,如三角形,圆锥曲线等,在UWP应用中加入这些几何作图功能是件费时间又很难做好的事.其实Windows 10 应用商店中已有一些专业的几何作图工具了,那么能借来一用吗?答案是 ...

  7. poj 2031Building a Space Station(几何判断+Kruskal最小生成树)

    /* 最小生成树 + 几何判断 Kruskal 球心之间的距离 - 两个球的半径 < 0 则说明是覆盖的!此时的距离按照0计算 */ #include<iostream> #incl ...

  8. NOIP2002矩形覆盖[几何DFS]

    题目描述 在平面上有 n 个点(n <= 50),每个点用一对整数坐标表示.例如:当 n=4 时,4个点的坐标分另为:p1(1,1),p2(2,2),p3(3,6),P4(0,7),见图一. 这 ...

  9. DOM 元素节点几何量与滚动几何量

    当在 Web 浏览器中查看 HTML 文档时,DOM 节点被解析,并被渲染成盒模型(如下图),有时我们需要知道一些信息,比如盒模型的大小,盒模型在浏览器中的位置等等,本文我们就来详细了解下元素节点的几 ...

随机推荐

  1. Guide to installing 3rd party JARs

    Although rarely, but sometimes you will have 3rd party JARs that you need to put in your local repos ...

  2. C# 之 日常问题积累

    https://www.cnblogs.com/xinaixia/p/3956349.html

  3. SpringMVC @RequestBody请求参数在postman中的请求

    使用SpringMVC框架,controller使用参数  @RequestBody  LoginReq req   注解方式模拟http请求 需要请求header添加一个参数 设置  Header参 ...

  4. shell脚本通过expect脚本实现自动输入密码

     背景:在远程文件下载时,需要输入对方的服务器密码,shell不支持交互输入内容,可以用下面两种方式实现   一.在shell脚本中嵌入expect来实现密码输入 expect是一个自动交互功能的工具 ...

  5. ajax传递数组及后台接收

    ajax传递的是{"items":arr},其中arr=[]; 在后台String[] items=req.getParameterValues("items" ...

  6. 25- 解决'python -m pip install --upgrade pip' 报错问题

    转载于:https://blog.csdn.net/cxs123678/article/details/80659273 再安装包的时候提示 You are using pip version 9.0 ...

  7. Ubuntu18.04安装Virtualenv虚拟环境

    在Ubuntu18.04安装Virtualenv虚拟环境 [实验环境]: 在这台电脑上已经安装了python3 [安装参考] 1.查看是否已安装virtualenv virtualenv --vers ...

  8. SQLite介绍

    优点:轻量级.绿色组件.单一文件.跨平台.查询效率极高.使用事务插入速度极快.支持limit分页. 适合查询速度要求较高,内存占用较少的场合,尤其是嵌入式操作系统,如各种手机操作系统,低并发web(9 ...

  9. golang之切片与排序

    1.排序与查找操作 排序操作在sort包中,sort.Ints对整数进行排序,sort.Strings对字符串进行排序,sort.Float64对浮点数进行排序 package main import ...

  10. Mac 安装GCC

    OS X上安装Homebrew和GCC的图文攻略 2016年08月31日 11:21:27 白马负金羁 阅读数:11380 标签: OS XGCCHomebrew 更多 个人分类: 应用技巧   版权 ...