当前位置: 首页 > news >正文

CF342C

显然,每一层恰好能放下两个球(事实上这也是最优的方案),那么下面一共可以放 \(\lfloor \frac{h}{r} \rfloor \times 2\) 个球,剩余 \(h - \lfloor \frac{h}{r} \rfloor \times r+r\) 的高度,记 \(h'=h-\lfloor \frac{h}{r} \rfloor\times r\) 为立方体部分剩余高度。最上面至少能放 \(1\) 个球,至多 \(3\) 个。分类讨论:

  • 如果放 \(3\) 个,则必须满足 \(\frac{\sqrt{3}}{2}r+r\le h'+r\),即 \(\frac{\sqrt{3}}{2}r\le h'\)。此时三个球的球心构成等边三角形。
  • 如果放 \(2\) 个,则两个球的球心必须在半圆形直径以下,即 \(\frac{r}{2}\le h'\)
  • 否则只能且一定放 \(1\) 个球(半圆形完全没有占用,肯定放得下)。
#include<iostream>
#include<cstdio>
using namespace std;
int main(){int h,r,ans=0;cin>>r>>h;ans=h/r;h-=ans*r;ans*=2;if((double)h*h>=(double)0.75*r*r)ans+=3;else if((double)h>=(double)0.5*r)ans+=2;else ans++;cout<<ans;return 0;
}
http://www.wxhsa.cn/company.asp?id=1671

相关文章:

  • ICPC/XCPC 做题记录
  • LG9648
  • LG5689
  • 近五年 CSP NOIP 补题记录
  • CF2111C
  • 唐人日记
  • CF2111B
  • ABC394F
  • LG11793
  • ABC394G
  • MX 炼石 2026 NOIP #5
  • 0126_状态模式(State)
  • Visual Studio 2026 预览体验版现已发布,一起来看看带来哪些新功能!
  • 基于RK3568/RK3576/RK3588/全志H3/飞腾芯片/国产UOS等/国标GB28181监控系统
  • Go语言读写锁(RWMutex)底层原理详解
  • 【GitHub每日速递】无需提示词!Nano Bananary香蕉超市:AI绘画玩法多到停不下来
  • 小题狂练 (J)
  • Drift数据库开发实战:类型安全的SQLite解决方案
  • DELPHI FireDAC连接EXCEL文件
  • 读人形机器人09教育行业
  • PHP判断字符串是否包含中文
  • 当我们红尘作伴,活得潇潇洒洒
  • 诡异的mysql8的问题
  • 二叉树理论
  • 支付中心的熔断降级要怎么做
  • 协议版iM蓝号检测,批量筛选iMessages数据,无痕检测是否开启iMessage服务
  • 栈和队列总结
  • 工业互联网认知实训台-一句话介绍
  • 湾区杯 SilentMiner WP
  • Python-课后题题目-1.1编程世界初探