hdu 6398 Pizza Hub(计算几何)

HDU 6398 Pizza Hub 模拟,分内讨论 Pizza Hub Time Limit: 3000/3000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) Total Submission(s): 765    Accepted Submission(s): 166Special Judge   Problem Descripti... 阅读详情

题目:给定三角形三点坐标,可以任意旋转,和矩形的宽度,求矩形的最小高度,使得矩形能装下三角形。

思路:最优的情况下肯定是有一个顶点顶在矩形的角上,然后枚举相邻两条边哪一个在上哪一个在下面就可以了。边界很容易出错,要判断能不能装进去基础上才能找最优的放法。

#include <bits/stdc++.h>
using namespace std;
#define eps 1e-8
#define pi acos(-1.0)
int t,n,m,x[3],y[3];
double w,l[3];
int sgn(double a)
{
    if(fabs(a)<=eps) return 0;
    if(a<-eps) return -1;
    else return 1;
}
double len(int i,int j)
{
    return sqrt(1.0*(x[i]-x[j])*(x[i]-x[j])+1.0*(y[i]-y[j])*(y[i]-y[j]));
}
double ans;
void solve(double a,double b,double c)
{
    double f=acos((a*a+b*b-c*c)/(2.0*a*b));
    if(sgn(f-pi/2.0)<=0)
    {
        double f1=0,f2,tmp,cmp;
        if(sgn(a-w)>0)
            f1=acos(w/a);
        f2=f1+f;
        if(sgn(f2-pi/2)>0) return;
        double bw=b*cos(f2);
        if(sgn(bw-w)<=0)
        tmp=b*sin(f2);
        else
            tmp=sqrt(b*b-w*w);
        cmp=a*sin(f1);
        ans=min(ans,max(tmp,cmp));
    }
}
int main()
{
    //freopen("in.txt","r",stdin);
    //freopen("out.txt","w",stdout);
    scanf("%d",&t);
    int k=0;
    while(t--)
    {
        k++;
        for(int i=0;i<3;i++)
        scanf("%d%d",&x[i],&y[i]);
        scanf("%lf",&w);
        for(int i=0;i<3;i++)
            l[i]=len(i,(i+1)%3);
        sort(l,l+3);
        double S2=0.5*sqrt((l[1]+l[2]+l[0])*(l[1]+l[2]-l[0])*(l[1]-l[2]+l[0])*(-l[1]+l[2]+l[0]));
        double h3=S2/l[2];
        if(sgn(h3-w)>0)
        {
            puts("impossible");
            continue;
        }
        ans=l[2];
        for(int i=0;i<3;i++)
        {
            double a=l[i],b=l[(i+1)%3],c=l[(i+2)%3];
            solve(a,b,c);
            solve(b,a,c);
        }
        printf("%.9f\n",ans);
    }
    return 0;
}

 

 

【RT-DETR有效改进】全新的SOATA轻量化下采样操作ADown(轻量又涨点,附手撕结构图) 本文给大家带来的改进机制是利用2024/02/21号最新发布的YOLOv9其中提出的ADown模块来改进我们的Conv模块,其中YOLOv9针对于这个模块并没有介绍,只是在其项目文件中用到了,我将其整理出来用于我们的YOLOv8的项目,经过实验我发现该卷积模块(作为下采样模块)首先可以大幅度降低参数值,其次其精度上也有很高的提升,同时本文的内容目前网络上并无其它人总结(也是最新发布的,可以说BUff是集满了)大家可以尝试以下在自己数据集上的效果。 阅读详情

相关推荐

Mac用户必看:Parallels Desktop 18.1.1最新破解版安装与优化全攻略(附资源)

本文为Mac用户提供Parallels Desktop 18.1.1的详细安装与优化指南,涵盖虚拟化技术选型、专业级配置流程及性能调优技巧。重点解析Parallels Desktop在图形加速、系统资源调度方面的核心优势,并分享生产力增强技巧与典型应用场景实战方案,帮助用户最大化利用这一高效虚拟化工具。

weixin_29240343的博客 824

HDU-6398:Pizza Hub(计算几何)

Pizza Hub Time Limit: 3000/3000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) Special Judge Problem Description Coffee Chicken has started a new restaurant named Pizza Hu…b! It pro...

Mitsuha_的博客 1574

V-rep机器人仿真(Win10):UR5+RG2+Kinect+YOLOV3+DDPG+Pytorch(第四部分:YOLOV3图像识别)

这是一个V-rep机器人仿真实验,较为简单,适合初学者在入门图像识别、机器学习、机器人学的内容时进行学习与训练。 实验涉及的内容有:V-rep机器人仿真,YOLOV3图像识别,强化学习DDPG,UR5机械臂及RG2机械手,Kinect摄像头。 使用环境:Win10,Pytorch0.4,V-rep 整个实验一共由多篇文章组成,本文是第四部分。 第四部分:YOLOV3图像识别 文章目录第四部分:YO...

weixin_42158966的博客 5837

HDU-6398-Pizza Hub(枚举+计算几何)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6398 题目大意:给出一个无限长,w宽的纸带,将一个三角形放在纸带上,使得纸帯的使用长度最短,输出最短情况,如果不能放上面,输出“impossible”。 思路:我们可以将纸带竖过来,然后取一点顶在纸带的边界,然后对他进行旋转,会有以下三种情况: 如图所示,1.灰线上的是能够在两条线之间的情况...

永远鲜红の幼月的博客 280

Win10更新后黑屏只剩鼠标?火绒误杀explorer.exe的5种自救方案(附详细步骤)

本文详细介绍了Win10更新后出现黑屏只剩鼠标的5种专业修复方案,重点解决火绒误杀explorer.exe的问题。从基础的任务管理器操作到安全模式下的系统修复,再到注册表编辑和系统还原,提供了全面的解决方案,帮助用户快速恢复系统正常运行。

weixin_29306571的博客 637

500道C++面试高频题解析(附答案、实战示例与进阶追问)

本文提供500道C++面试高频题的详细解析,涵盖基础概念到进阶应用,包括面向对象编程、内存管理、现代C++特性、并发编程等核心考点。每道题配有实战示例和进阶追问,帮助开发者突破八股文局限,掌握解决实际问题的能力,适合准备C++技术面试的工程师系统复习。

weixin_29002595的博客 311

Pizza Hub HDU - 6398 (分类讨论)

https://blog.youkuaiyun.com/mitsuha_/article/details/81746486 这篇博客就写的很好 分两种情况,第一种是一条底边更好跟矩形的边重合,这时候要考虑另一条边是否在这个底边的上部,如果在下部直接return,如果在上部,考虑另一条边在底面的投影的长度与w比较,大的话就return,否则更新答案,计算这两条边的夹角,如果夹角超过90度那么也是不行...

leekerian的博客 410

MIKE11实战:平原河网水动力建模从入门到精通(附GIS数据处理技巧)

本文系统介绍了MIKE11软件在平原河网水动力建模中的完整实战流程。从GIS数据预处理、河网构建、参数率定到结果分析,详细阐述了构建可靠数字孪生模型的关键步骤与技巧,旨在帮助水利工程师高效解决平原地区复杂水流模拟的挑战,为防洪决策提供科学依据。

weixin_28419039的博客 689

hdu 6398 Pizza Hub

题解:枚举每条边,每条边考虑三种情况,当前边(重合于x轴,重合于y轴,倾斜x轴某一角度A) #include &lt;bits/stdc++.h&gt; using namespace std; typedef long long LL; typedef pair&lt;int, int&gt; pii; const int mod = 998244353; const int MX = 1...

qq_18869763的博客 259

VASP编译疑难解析—手动配置icx路径解决libintel64报错

本文针对VASP编译过程中执行`make libintel64`时遇到的`icx: 没有那个文件或目录`报错,提供了详细的解决方案。核心在于手动定位Intel oneAPI编译器的绝对路径,并修改makefile中的编译器变量,从而解决因系统PATH环境变量未正确设置导致的libintel64编译失败问题。

weixin_28834765的博客 125

【AI面试】2026 AI Agent 应用开发|应届生简历模板 + 完整学习路线图(校招可直接复用)

很多同学学完 RAG、Agent 之后,不知道简历怎么写,项目写成 “调用大模型 API 实现聊天机器人”,投出去几乎没有面试。AI Agent 应用开发,本质还是软件开发岗位。简历要突出工程能力、踩坑优化、问题解决,不要只堆砌 AI 关键词。注意:本文针对【AI 应用开发 / Agent 应用工程师】本科校招;不适合大模型训练、微调算法岗。AI Agent 应用开发岗位,不是只会写提示词、调用 API 就可以拿到 offer。拥有传统软件工程基本功,同时懂大模型、RAG、Agent 工程落地的开发者。

十年老程序猿,AI 疯狂研究专家,前沿硬核知识分享 303

HDU 6398 Pizza Hub(计算几何)

Description 给出二维平面三角形的三个顶点坐标,现在要将这个三角形经过任意旋转使得其可以放在一个宽为www的矩形中,问该矩形的高度最小值 Input 第一行一整数TTT表示用例组数,每组用例输入七个整数x1,y1,x2,y2,x3,y3,wx1,y1,x2,y2,x3,y3,wx_1,y_1,x_2,y_2,x_3,y_3,w分别表示三点坐标和矩形的宽 (1≤T≤50000,0≤...

ZSQ 469

全覆盖路径规划开源项目Clean-robot-turtlebot3原理及流程概括总结

本系列文章主要介绍全覆盖路径规划开源项目Clean-robot-turtlebot3的相关内容,包含如下四篇文章,分别介绍了开源项目Clean-robot-turtlebot3流程的概括总结、ROS坐标系常用坐标及其变换、Clean-robot-turtlebot3关键函数解析等内容。

慕羽★的博客 6103

HDU 6398 Pizza Hub(计算几何 三角形放置)

http://acm.hdu.edu.cn/showproblem.php?pid=6398 题意: 给一个可旋转的三角形,求一个宽为W的矩形的最小高度,使得这个三角形可以塞进去 解析: 一定有一个点在边上,所以枚举每个点P做(吉如一jls推荐的旋转平移流) 平移坐标系使得P落在原点 选择第二个点K,尝试这样放 如果不行,就这样放 或者这样 通过K的旋转,计算得到最后一个点K2的位置 这里需要注意由于精度误差acos内的部分可能是−1.0000001-1.0000001−1.0

QAQ 295

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

hdu Pizza Hub 计算几何

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6398 这题做了一天真是恶心!!!计算几何的题目都是这样。。。 计算几何需要注意的最大的问题就是角度或者sin、cos的值的大小判断是一个模糊的界限,不管哪一个比较大,只要差值不超过 规定的eps(一般是1e-6)就可以视为是相等的。不能单纯地用大于号或者小于号判断。 如a&gt;b,但是fab...

大乐的博客 366

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

HDU 6398

题意: 给一个三角形,放在一个给定宽度的无线长的矩形中,要求占得长度最小。 题解: 分两种情况,一是三角形的边与矩形的边重合,二是三角形的两个点卡在矩形的两条边上。 对于第一种情况,枚举底边,算出第三点在底边的投影,就知道要占据的最小宽度,若小于等于矩形宽度,再算出占据的高度。 对于第二种情况,枚举卡在矩形的两条边上的两个点,算出该边与矩形宽度的夹角,第三点若在矩形内,再算出占据...

Spy97的博客 487

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

2018HDU 多校8 1002 Pizza Hub

题意:一个宽度固定的纸带,选一个最小的高使其能装下一个给定的三角形 大致思路:枚举三角形一条边在矩形上下边的情况和边靠边的情况。计算几何没什么特别的难点,关键是要耐心,细心。 //#pragma comment(linker, "/stack:200000000") //#pragma GCC optimize("Ofast,no-stack-protector") //#pragma G...

lbltyyj的博客 497

HDU-6242:Geometry Problem(随机化+几何)

                                             Geometry Problem                                      Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others)              ...

Mitsuha_的博客 911

hdu6398 计算几何

不算严格的计算几何,就是各种分类 精度调好就能过,考虑三条边斜着放的所有情况即可 #include<bits/stdc++.h> #define LL long long #define ll long long #define fi first #define se second #define mk make_pair #define pi acos(-1) #define PII...

weixin_30807779的博客 154

HDU 小希的迷宫 (并查集)

Problem Description 上次Gardon的迷宫城堡小希玩了很久(见Problem B),现在她也想设计一个迷宫让Gardon来走。但是她设计迷宫的思路不一样,首先她认为所有的通道都应该是双向连通的,就是说如果有一个通道连通了房间A和B,那么既可以通过它从房间A走到房间B,也可以通过它从房间B走到房间A,为了提高难度,小希希望任意两个房间有且仅有一条路径可以相通(除非走了回头路

AK_HuangYC的博客 500

HDU 6150 Vertex Cover【构造】

题目链接题意:求最小点覆盖,给你一个错误的算法,输出一个反例使得正确答案比它小三倍以上。这个构造太吊了啊 构造一个二分图,设左边有nn个点,标号是11到nn。对于每个 i∈[1,n]i\in[1, n],都在右边新建 ⌊ni⌋\lfloor \frac{n}{i} \rfloor个点,每个点都选择左边的ii个点连1条边,使得左边每个点最多只被多加了一条边。这样构造完成后可以发现贪心的做法会把右边

hxh的博客 474

2018hdu多校7 - AraBellaC

题意:一个字符串,由形如(AAA……BBB……CCC……)的串循环构成,告诉你每个位置上哪些是A,哪些是B,哪些是C,求字典序最小的a,b,c。 思路:枚举循环节,算出每段中armax,blmin,brmax,clminarmax,blmin,brmax,clminar_{max}, bl_{min}, br_{max},cl_{min}.即可 #include&lt;bits/stdc+...

lbltyyj的博客 304

hdu6396(神奇的读入挂)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6396 思路:首先一定要用一种比快读还要牛逼的读入挂,然后开k个从小到大优先队列,对每个然后每个优先队列都对应一个值d【i】,只要比这个值小的就可以出去,然后对应下标的值+1,如果一旦定于k,那就满足条件。。 #include &lt;cstdio&gt; #include &lt;cstdlib...

llmxby 634

HDU-6326 Problem H. Monster Hunter(贪心模拟)

题目:给定一棵 n 个点的树,除 1 外每个点有一只怪兽,打败它需要先消耗 ai点 HP,再恢复 bi点 HP。求从 1 号点出发按照最优策略打败所有怪兽一开始所需的最少 HP。 思路:以 1 为根将树转化成有根树,那么每只怪兽要在父亲怪兽被击败后才能被击败。假如没有父亲的限制,会产生一个最优的攻击顺序: 第一步:将怪兽分成两类:a &lt; b 的和 a ≥ b 的,前一类打完会加血,后一类...

XFire的博客 1084

HDU-6299 Balanced Sequence(贪心)

题目:n个包含 ’(‘ 和 ’)’ 的字符串,将这些字符串任意排序,求能过匹配消除多少括号。 贪心排个序,WA了十几发,看题解才知道,唉好菜啊啊啊。。还有因为没初始化??? #include&lt;bits/stdc++.h&gt; using namespace std; const int maxn=1e5+10; struct node{ int l,r; }a[maxn]...

XFire的博客 804
上一篇: hdu 6363 bookshelf(莫比乌斯反演)
下一篇: 牛客网多校9 Circulant Matrix (FWT)
GoLakerswxy
博客等级 码龄9年 41粉丝 158原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值