科学家小蓝来到了一个荒岛,准备对这个荒岛进行探测考察。 小蓝使用了一个超声定位设备来对自己进行定位。为了使用这个设备,小蓝需要在不同的点分别安装一个固定的发射器和一个固定的接收器。小蓝手中还有一个移

简介: 科学家小蓝来到了一个荒岛,准备对这个荒岛进行探测考察。 小蓝使用了一个超声定位设备来对自己进行定位。为了使用这个设备,小蓝需要在不同的点分别安装一个固定的发射器和一个固定的接收器。小蓝手中还有一个移

荒岛探测


题目描述


科学家小蓝来到了一个荒岛,准备对这个荒岛进行探测考察。

小蓝使用了一个超声定位设备来对自己进行定位。为了使用这个设备,小蓝需要在不同的点分别安装一个固定的发射器和一个固定的接收器。小蓝手中还有一个移动设备。定位设备需要从发射器发射一个信号到移动设备,移动设备收到后马上转发,最后由接收器接收,根据这些设备之间传递的时间差就能计算出移动设备距离发射器和接收器的两个距离,从而实现定位。


小蓝在两个位置已经安装了发射器和接收器,其中发射器安装在坐标 (xA, yA) ,接收器安装在坐标 (xB, yB)小蓝的发射器和接收器可能在岛上,也可能不在岛上。

小蓝的定位设备设计有些缺陷,当发射器到移动设备的距离加上移动设备到接收器的距离之和大于 L 时,定位设备工作不正常。当和小于等于 L 时,定位设备工作正常。为了安全,小蓝只在定位设备工作正常的区域探测考察。


已知荒岛是一个三角形,三个顶点的坐标分别为 (x1, y1), (x2, y2), (x3, y3)

请计算,小蓝在荒岛上可以探测到的面积有多大?


输入描述


输入的第一行包含五个整数,分别为xA, yA, xB, yB, L

第二行包含六个整数,分别为x1, y1, x2, y2, x3, y3

保证发射器的两个坐标不同,并且

-1000<=xA, yA, xB, yB , L, x1, y1, x2, y2, x3, y3<=1000


输出描述

输出一行,包含一个实数,四舍五入保留 2 位小数,表示答案。

考虑到计算中的误差,只要你的输出与参考输出相差不超过 0.01 即可。


输入输出样例


示例

输入

10 6 4 12 12

0 2 13 2 13 15


输出

39.99

样例说明


20210417132217973.png


运行限制 最大运行时间:1s 最大运行内存: 256M


C++


暴力算法,最后超时了5555


#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
int x1, y01, x2, y2, x3, y3, xA, yA, xB, yB, L;
double fxy(int a,int b ,double x)//求直线方程
{
    int X1 = 0, Y1 = 0, X2 = 0, Y2 = 0;
        switch (a)
        {
        case 1:X1 = x1; Y1 = y01; break;
        case 2:X1 = x2; Y1 = y2; break;
        case 3:X1 = x3; Y1 = y3; break;
        default:X1 = xA; Y1 = yA;
        }
        switch (b)
        {
        case 1:X2 = x1; Y2 = y01; break;
        case 2:X2 = x2; Y2 = y2; break;
        case 3:X2 = x3; Y2 = y3; break;
        default:X2 = xB; Y2 = yB;
        }
        return double(Y2 - Y1) / (X2 - X1)*(x - X1) + Y1;
}
bool island(double x,double y)//判断是否在三角形内
{
    return ((fxy(1, 2, x) - y)*(fxy(1, 3, x) - y) <= 0) + ((fxy(1, 2, x) - y)*(fxy(2, 3, x) - y) <= 0) + ((fxy(1, 3, x) - y)*(fxy(2, 3, x) - y) <= 0)>=2;
}
bool ellipse(double x,double y)//判断在椭圆内
{
    return sqrt((x - xA)*(x - xA) + (y - yA)*(y - yA)) + sqrt((x - xB)*(x - xB) + (y - yB)*(y - yB)) <= L;
}
int main()
{
    cin >> xA >> yA >> xB >> yB >> L;
    cin >> x1 >> y01 >> x2 >> y2 >> x3 >> y3;
    double x, y, cx, cy, S = 0;
    cx = (xA + xB) / 2.0;
    cy = (yA + yB) / 2.0;
    for (x = cx - L/2.0; x <= cx + L/2.0; x += 0.02)
        for (y = cy-L/2.0; y<=cy+L/2.0; y += 0.005)
            if (island(x, y)&& ellipse(x, y))
                S += 0.0001;
    printf("%.2f", S + 0.005);
    return 0;
}
相关文章
|
算法 内存技术
语音信号的A律压缩和u律压缩matlab仿真
语音信号的A律压缩和u律压缩matlab仿真
|
程序员 编译器 C语言
最新Dev-C++下载安装以及C语言环境搭建教程(含C语言入门教程)
最新Dev-C++下载安装以及C语言环境搭建教程(含C语言入门教程)
2757 0
|
3月前
|
数据采集 人工智能 运维
打破 Coding Agent 黑盒困境:阿里云LoongSuite AI Agent 观测审计数据采集实践教程
随着AI Agent在研发、办公、企业业务领域规模化落地,Claude Code、OpenClaw、Cursor、Hermes Agent等各类智能体已经成为开发者和企业团队的常规生产力工具。从本地代码助手、个人办公智能体,到基于LangChain、Dify等框架搭建的复杂业务Agent,不同形态的AI应用渗透到工作的各个环节。但在大规模使用后,传统运维模式的短板彻底暴露:Agent内部的推理逻辑、工具调用流程、资源消耗完全处于“黑盒”状态,运维人员无法直观掌握运行细节。
458 0
|
2月前
|
弹性计算 算法 关系型数据库
阿里云国际站:ECS服务器时间不同步?NTP配置与排查全教程
不少人在阿里云上把 ECS 跑起来之后,很快会遇到一个看似不起眼却很难缠的问题:一条订单记录的时间戳比实际早了 8 分钟,或是 HTTPS 证书突然报过期——排查到最后才发现是系统时间跑偏了。阿里云 ECS 时间同步配置这件事,在省心的错觉里藏着大量需要手动校准的细节,只有把 NTP 机制从头理顺,才能避免由几秒偏差引发的连锁故障。
693 1
|
SQL 运维 安全
场景化经验复用工具深度分析:在多项目并行中如何实现高频经验沉淀与复用?
在团队协作中,问题重复发生、经验难以复用是常见痛点。本文提出“场景化经验复用”方法,通过结构化沉淀、智能推荐与流程嵌入,让经验在需要时自动浮现,提升团队效率与新人成长速度,构建“问题→经验→行动”的闭环,打造真正可复用的知识资产。
|
数据可视化 开发工具 git
如何解决 Git 版本控制系统中冲突的问题?
在Git版本控制系统中,冲突是指在合并或拉取操作时,两个或多个开发者对同一文件的同一部分进行了不同的修改,导致Git无法自动确定应该采用哪种修改。
988 154
|
Ubuntu 开发工具 Android开发
Repo下载AOSP源码:基于ubuntu22.04 环境配置,android-12.0.0_r32
本文介绍了在基于Ubuntu 22.04的环境下配置Python 3.9、安装repo工具、下载和同步AOSP源码包以及处理repo同步错误的详细步骤。
1928 0
Repo下载AOSP源码:基于ubuntu22.04 环境配置,android-12.0.0_r32
|
存储 弹性计算 固态存储
阿里云服务器价格表(2023新版报价)
阿里云服务器1核1G1M优惠价17.49元3个月,251.86元一年、2核4G1M带宽40.98元3个月,590.11元一年、4核8G服务器73.38元3个月,1056.67元一年、8核16G配置138.18元3个月,1989.79元一年、8核32G服务器1M带宽214.50元3个月,3088.80元一年
12971 1
阿里云服务器价格表(2023新版报价)
|
机器学习/深度学习 编解码 负载均衡
MoH:融合混合专家机制的高效多头注意力模型及其在视觉语言任务中的应用
本文提出了一种名为混合头注意力(MoH)的新架构,旨在提高Transformer模型中注意力机制的效率。MoH通过动态注意力头路由机制,使每个token能够自适应选择合适的注意力头,从而在减少激活头数量的同时保持或提升模型性能。实验结果显示,MoH在图像分类、类条件图像生成和大语言模型等多个任务中均表现出色,尤其在减少计算资源消耗方面有显著优势。
758 1
|
安全 网络协议 算法
电脑病毒木马的清除和防范方法
电脑病毒木马的清除和防范方法
4013 0
电脑病毒木马的清除和防范方法

热门文章

最新文章