HDU - 7046 - Fall with Trees ( 思维 + 精度 )

物联网 Mixly-智能楼道灯 一、实验目的及要求 熟悉声音及人体红外传感器用法。 二、实验原理与内容 1.使用声音传感器实现声控灯功能。 2.使用人体红外传感器实现人体检测控制灯功能。 三、实验软硬件环境 硬件:Arduino、LED灯、声音传感器、人体红外传感器 软件:Mixly IDE 四、实验过程(实验步骤、记录、数据、分析) 核心代码截图 声控灯: 人体红外检测灯: 3.实验效果图: (1)、声控灯总线连接: (1)、声控灯声音大于一某个值时灯亮,经过2秒后灯灭: (3)、人体红外检测灯连接总线: (4)、人体红外 阅读详情
题目链接:点击进入
题目

在这里插入图片描述
在这里插入图片描述

题意

k 层完美二叉树,给你根节点的坐标,以及根节点左右儿子的坐标,让你求 k 层完美二叉树所有节点形成的凸包的面积 ( 就是最外面一层包起来的图形面积 ) 。

思路

思考一下,总面积应该是一个顶端的三角形加上 k - 2 个梯形的面积,顶端三角形的下边,同时是下一个梯形的上边,而下一个梯形的下边又是下下一个梯形的上边。它们之间是有联系的。看看那个图,大概就能想到,下一层的相邻两点之间的距离是这一层相邻两点之间的距离的一半,下一层的点的个数是这一层点数的 2 倍,因为每一层的相邻两点之间的距离都是相等的,那么假如一层有 n 个点,那么就有 n - 1 个间隔,每个间隔都是等长的,假设长度为 len ,那么这一层的长度就等于 ( n - 1 ) * len 。那么下一层的长度就等于 ( 2 * n - 1 ) * ( len / 2 ) ,这样递推就可以得到每一层的长度,每一层的长度可以当作上下底边,高不变,那么递推每一层长度的时候,正好顺便计算以这一层为上底的梯形的面积。
还有就是,它最后要求精度 1e - 3 ,间隔长度最长 2e4 , 每次 / 2 ,那么多除上几下这个长度就会变得很小很小了,到最后长度几乎就相当于没什么变化了,梯形的面积就相当于不变了。那么我们就可以找一个精度界值,若是长度小于这个界值了同时我们还没递推完,那么就不用递推了,因为这时候我们默认梯形的面积不会再变化了,所以直接将剩下的梯形面积加上然后跳出递推即可。
( 精度 1e - 12 即可,不要用 long double,会 T )

代码
//#pragma GCC optimize(3)//O3
//#pragma GCC optimize(2)//O2
#include<iostream>
#include<string>
#include<map>
#include<set>
//#include<unordered_map>
#include<queue>
#include<cstdio>
#include<vector>
#include<cstring>
#include<stack>
#include<algorithm>
#include<iomanip>
#include<cmath>
#include<fstream>
#define X first
#define Y second
#define best 131 
#define INF 0x3f3f3f3f3f3f3f3f
#define pii pair<int,int>
#define lowbit(x) x & -x
#define inf 0x3f3f3f3f
//#define int long long
//#define double long double
//#define rep(i,x,y) for(register int i = x; i <= y;++i)
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
const double pai=acos(-1.0);
const int maxn=1e6+10;
const int mod=998244353;
const double eps=1e-12;
const int N=5e3+10;
/*--------------------------------------------*/
inline int read()
{
    int k = 0, f = 1 ;
    char c = getchar() ;
    while(!isdigit(c)){if(c == '-') f = -1 ;c = getchar() ;}
    while(isdigit(c)) k = (k << 1) + (k << 3) + c - 48 ,c = getchar() ;
    return k * f ;
}
/*--------------------------------------------*/

int t,k;
double xt,yt,xl,yl,xr,yr;

int main() 
{
//    ios::sync_with_stdio(false);
//    cin.tie(0);cout.tie(0);
    scanf("%d",&t);
    while(t--)
    {
        scanf("%d",&k);
        scanf("%lf%lf%lf%lf%lf%lf",&xt,&yt,&xl,&yl,&xr,&yr);
        double dis=xr-xl,h=yt-yl,sum=2;
        double ans=dis*h/2.0,res;
        for(int i=3;i<=k;i++)
        {
            res=((sum-1)*dis+(sum*2-1)*dis/2.0)*h/2.0;
            ans=ans+res;
            sum=sum*2.0;
            dis=dis/2.0;
            if(dis<eps)
            //这里不要等于,会wa,我就wa了,人傻了,或者这个边界在小一点也行
            {
                ans=ans+(k-i)*res;
                break;
            }
        }
        printf("%.3lf\n",ans);
    }    
    return 0;
} 
SAP Cloud ERP 是什么,一篇文章讲清楚 SAP Cloud ERP并非简单将传统ERP搬到云上,而是对企业核心流程、数据和管理方式的全面重构。它包含S/4HANA Cloud的公有云版(标准化、快速部署)和私有云版(灵活定制),分别对应GROW with SAP和RISE with SAP实施路径。核心价值在于实现实时数据整合、端到端流程贯通及持续演进能力。企业需根据发展阶段选择:新兴企业适合标准化公有云,复杂组织可考虑私有云迁移。关键在于转变管理思维,避免将旧系统问题复制到新平台。上云决策本质是企业对数字化基座的选择,需权衡标准化与个性化需求。 阅读详情

相关推荐

《YOLOv8实例分割实战:训练自己的数据集 》(视频课程)

本课程将手把手地教大家使用labelme标注和使用YOLOv8训练自己的数据集,完成一个多目标实例分割实战项目。

bai666ai的博客 789

【题解】HDU7046(数学推导)

题目:https://acm.hdu.edu.cn/showproblem.php?pid=7046 题目来源:2021“MINIEYE杯”中国大学生算法设计超级联赛(7) 题目大概要求就是求按照给定的规则画出的图形的凸包大小。乍一看是计算几何的题目,然后再细想,其实就是一题数学推导的题目。 先画出内容,然后手动推一下边长的公式,然后就可以推出面积公式,直接计算就可以了。 AC代码 #include <bits/stdc++.h> using namespace std;

龙进的博客 179

【论文泛读|附源码】如何进行动力学重构? 神经网络自动编码器结合SINDy发现数据背后蕴含的方程

这一篇文章叫做 **数据驱动**的**坐标发现与方程发现算法**。想回答的问题很简单,就是根据数据写方程。 想想牛顿的处境,如何根据各种不同物体下落的数据,写出万有引力的数学公式的。这篇文章就是来做这件事的。当然,这篇论文并没有从牛顿视角,完全去思考牛顿所想。而是利用现有的**深度学习技术** 和 **动力学重构的方法** 。提出了一种框架,基于现有的计算机技术,去发现物质运动背后的物理规律。 这里直接给出这篇方法的核心思路图,我们后面会逐个讲解。

qq5q13638的博客 2454

中超7 hdu 7046 Fall with Trees (等比数列)

2021“MINIEYE杯”中国大学生算法设计超级联赛(7) hdu 7046 Fall with Trees 题意: ​ 已知一个满二叉树的根,树的高度和根的左右儿子的坐标,求二叉树的面积,同一高度下相邻节点的距离相等 分析: 即一个三角形加上 k−2k-2k−2 个梯形的面积 令 k=2k=2k=2 的宽度:aaa k=3:1.5ak=3:1.5ak=3:1.5a (通过计算得) k=4:1.75ak=4:1.75ak=4:1.75a k=5:(2−18)ak=5:(2-\frac{1}{8})ak=

yezzz的博客 248

数字逻辑EduCoder课设项目 厨房计时器系统设计 Logisim实现

数字逻辑EduCoder课设项目 厨房计时器系统设计 Logisim实现

weixin_51693702的博客 1万+

【libnice】meson + vs2022,生成win32工程

libnice

突围 947

C. Alyona and the Tree

C. Alyona and the Tree time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output Alyona decided to go on a diet and we

WhaleFall 463

蓝凌EIS智慧协同平台frm_form_upload.aspx接口存在任意文件上传漏洞

蓝凌EIS智慧协同平台frm_form_upload.aspx接口存在任意文件上传漏洞

nnn2188185的博客 357

【差分约束】 杭电多校4-1003(HDU7176)Magic

差分约束+SPFA单源最短路径同时判负环

m0_59701064的博客 441

告别 GENERATE_SUBPOOL_DIR_FULL:用 RTTC 平替 CL_ALV_TABLE_CREATE=>CREATE_DYNAMIC_TABLE 的一套更稳方案

文章摘要:本文探讨了ABAP开发中动态内表的创建问题,重点分析了使用CL_ALV_TABLE_CREATE方法可能遇到的GENERATE_SUBPOOL_DIR_FULL错误。该错误源于临时subroutine pool的36次创建上限,常在批量处理或频繁调用时出现。文章提出基于RTTC技术的替代方案ZCL_ALV_TABLE_CREATE_RTTC,通过运行时类型服务直接创建动态内表,无需生成临时代码,从而规避了资源限制。该方法保持接口兼容性,只需简单替换类名即可实现无缝迁移,是解决动态表创建瓶颈的有效方

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 223

labelImg使用教程

Anaconda环境 安装 Anaconda 之后,在开始菜单下找到 Anaconda 文件夹 找到 Anaconda Prompt 点击运行 安装 labelImg pip install labelImg #直接命令行输入 启动 labelImg labelImg #直接命令行输入名称即可 labelImg界面 开始标注 快捷键:W(创建方框),A(上一张),D(下一张) XML文件示例 <annotation> <folder>夜读</folder>

G果的博客 3万+

杭电多校第七场8月10日补题记录

C Fall with Trees 题意:给定一个完全二叉树的根节点与其左右儿子的坐标,按照每层等间距、每一层相邻儿子均等间隔排布,问这棵二叉树围成的凸包面积。 解法:记第二层的总宽度为 b2=xb_2=xb2​=x​​​​​​​​,则第三层宽度为 b3=x(1+12)\displaystyle b_3=x(1+\frac{1}{2})b3​=x(1+21​)​​​​​​​​,第四层宽度为 b4=x(1+12+14)b_4=\displaystyle x(1+\frac{1}{2}+\frac{1}{4})

m0_52048145的博客 464

军品研制过程-转阶段

介绍军品转阶段评审

Abel的博客 2万+

【DSA_Fall2020】2. Trees (Templates in C)

树状结构:树的基本概念、N叉树、二叉树、二叉搜索树、AVL树(平衡树);C语言实现模板 本文为本人学习过程中整理的学习笔记,想顺带学英语所以用英文呈现。发现错误还烦请指正。欢迎交流。 未经同意,请勿转载。 文章目录未经同意,请勿转载。TreeDefinitionBasis ConceptsN-ary TreeImplementationPropertiesConstructorDestructorInsertion (Building Tree)RemovalPreorder TraversalBinary

BIT_CABINZ 917

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

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

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

hdu - 1074(超级详细)

看了半天题解,感觉这道题好神奇,这种方法枚举真厉害!!题目:点此进入 Doing HomeworkIgnatius has just come back school from the 30th ACM/ICPC. Now he has a lot of homework to do. Every teacher gives him a deadline of handing in the hom

神回 4776

NTscan扫描工具

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

Imprecise Computer - ( 思维 / 递推 )

题目描述 The Imprecise Computer (IC) is a computer with some structural issue that it can compare two integers correctly only when their difference is at least two. For example, IC can always correctly answer ‘4 is larger than 2’, but it can answer either ‘2 i

Cosmic_Tree的博客 1528

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Going Home - ( 抽屉原理 )

题目链接:点击进入 题目 题意 给一个长度为 n 的数组,问是否存在 x , y , z , w ( 四个数互不相同 ) ,满足 a [ x ] + a [ y ] = a [ z ] + a [ w ] ; 思路 暴力枚举 x 与 y ,得出和值 C ,2 <= C <= 5e6。 有 n ^ 2 对( x , y ),和值 C 大约有 5e6 种取值,当 n ^ 2 > 5e6 时,根据抽屉原理,必有一个和值对应两个以上的( x , y )对,但是,此时可能对应的( x , y )

Cosmic_Tree的博客 1407

ABC Conjecture(大数分解)-2020ccpc(威海)

题意 给你一个范围是 [ 1 , 10 ^ ​18​​ ] 的数,让你求这个数能不能被一个 素数的平方 整除(即 c % ( i * i ) == 0) 思路1 用大数分解模板,将 c 分解得到 c 的所有质因子,然后去重(模板得到的是无序且没去重的),然后将所有质因子相乘,得到 tmp , 如果 tmp 跟 c 相等,说明 c 不能被素数的平方整除,否则可以。 (记得特判 c == 1 的情况!!! c = 1 是 “ no ” ) 代码1 #include<iostream> #incl..

Cosmic_Tree的博客 1335

A Golden Spirit (思维)-2020ccpc(威海)

题意 一座桥,桥两侧各有 n 个人,每个人都想去桥对面休息 x 分钟后再返回(必须休息够 x 分钟才能被背回去),问你满足所有人的愿望,最少需要多少分钟(你背一个老人过一次桥需要 t 分钟) 思路 最优的办法是(前 2 n 次)每一次过桥先背一个人去对面休息,等到所有(2 n个)人都到了(相对于自己一开始的位置的)桥对面,然后,这时候自己应该在自己最开始的位置,而此时每个人的休息所剩时间应该是: x x-2t x-4t … x-2*(n-1)t | x-t x-3t x-..

Cosmic_Tree的博客 1054

Gym - 103069B - Rectangle Flip 2( 暴力 + 思维 )

题目链接:点击进入 题目 题意 n * m 的网格,每秒删除其中一个小网格,问每秒后,还剩余多少个好的矩形 ( 只要是矩形,同时矩形内没有被删除的格子 ) 思路 蚌埠住啦,这题因为万恶的javaweb被我搁置了好久,我老早就想写了,难受≧ ﹏ ≦ 按照顺序删除点,对于每个删除的点,看会影响多少新矩形。思考一下(脑袋里构一下图),一个新删除的点,能影响到的,只能是以这个点x为中轴,上下每行左右扩到最大的部分(最大就是指碰到被删除的点,或者边界),这个上下每行也是在x轴上上下扩到最大的。我们若是确定每行能扩

Cosmic_Tree的博客 834

The number of steps(概率dp问题)

题目描述 Mary stands in a strange maze, the maze looks like a triangle(the first layer have one room,the second layer have two rooms,the third layer have three rooms …). Now she stands at the top point(the first layer), and the KEY of this maze is in the lowes

Cosmic_Tree的博客 805

Clock Master(分组背包)-2020ccpc(威海)

题意: T 组样例,每组给一个 n ,范围是 [ 1 , 30000 ] ,要求将 n 分解成: n = a1 + a2 + … + am ( m 没有限制 ),使得(a1 + a2 + … + am)的最小公倍数最大,输出这个最大值的对数。 思路: 将题目转换一下,就变成了将n分解,分解成 使得 尽可能的大。同时答案是要求输出这个最大值的对数,这个式子又转换为 有 k 种(组)素数,每种(组)素数只能选择一个幂次( p ^ ( ei )) ,第i个数的容量是 p ^ ( ei ),价值是log (.

Cosmic_Tree的博客 799

Chat Group -( 组合数 + 乘法逆元 )

题目链接:点击进入 题目 题意 n 个人, >= k 人就可以组成一个小组,问能组成多少个小组 思路 答案 = c ( n , k ) + … + c ( n , n ) = 2 ^ n - ( c ( n , 0 ) + … + c ( n , k - 1 ) ) c ( n , i ) = c ( n , i - 1 ) * ( n - i + 1 ) / i i 的逆元: 1 / i = i ^ ( mod - 2 ) 代码 #include<iostream> #includ

Cosmic_Tree的博客 693

HDU - 5256-序列变换(求最长严格递增子序列)

题目连接:点击进入 题意 一个数列,要求修改数量最少的元素,使得这个数列严格递增。其中无论是修改前还是修改后,每个元素都必须是整数。输出最少需要修改多少个元素。 思路 求最长的严格递增子序列 (O ( N ^ 2 ) 会 T , 所以用 O( N lg N)的 - - 二分查找) 这里解释一下对于初始的序列 a [ i ] 的偏移(也就是令 a [ i ] = a [ i ] - i) 因为严格递增要满足 a [ i ] - a [ j ] >= i - j , 即 a [ i ] - i >=

Cosmic_Tree的博客 657

What Goes Up Must Come Down(树状数组求逆序对)

题意 给你一个长度为n的数字序列,你每次可以交换任意两个相邻的数字,让你求出达到目标序列(前面不递减,后面不递增) 思路

Cosmic_Tree的博客 644

L3-011 直捣黄龙(最短路+dfs路径回溯)

题目链接:点击进入 思路 最短路+dfs路径回溯,不难,但是我被卡了,没看出来最短距离相等时,路径数应该是两者相加(我记得我之前做这类的题目的时候也是这里被卡,我真是猪脑子(* ̄(oo) ̄))。。。写博客纪念一下o(╥﹏╥)o 代码 #include<iostream> #include<cstring> #include<queue> #include<map> #include<cstdio> #define pii pair<int,i

Cosmic_Tree的博客 620
上一篇: 2021牛客暑期多校训练营8 - K - Yet Another Problem About Pi( 思维 + 暴力枚举 )
下一篇: HDU - 7049 - Link with Grenade ( 物理 + 数学 )
Cosmic_Tree
博客等级 码龄7年 134粉丝 337原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值