A2604 | 信号增幅仪
时间限制1s
内存限制128MB
通过 / 提交0/0
题目描述
无线网络基站在理想状况下有效信号覆盖范围是个圆形。而无线基站的功
耗与圆的半径的平方成正比。现给出平面上若干网络用户的位置,请你选择一
个合适的位置建设无线基站 ……
就在你拿起键盘准备开始敲代码的时候,你的好朋友发明家SHTSC 突然出
现了。SHTSC 刚刚完成了他的新发明——无线信号增幅仪。增幅仪能够在不增
加无线基站功耗的前提下,使得有效信号的覆盖范围在某一特定方向上伸长若
干倍。即:使用了增幅仪的无线基站覆盖范围是个椭圆,其功耗正比于半短轴
长的平方。
现给出平面上若干网络用户的位置,请你选择一个合适的位置建设无线基
站,并在增幅仪的帮助下使所有的用户都能接收到信号,且无线基站的功耗最
小。
注意:由于SHTSC 增幅仪的工作原理依赖地磁场,增幅的方向是恒定的。
耗与圆的半径的平方成正比。现给出平面上若干网络用户的位置,请你选择一
个合适的位置建设无线基站 ……
就在你拿起键盘准备开始敲代码的时候,你的好朋友发明家SHTSC 突然出
现了。SHTSC 刚刚完成了他的新发明——无线信号增幅仪。增幅仪能够在不增
加无线基站功耗的前提下,使得有效信号的覆盖范围在某一特定方向上伸长若
干倍。即:使用了增幅仪的无线基站覆盖范围是个椭圆,其功耗正比于半短轴
长的平方。
现给出平面上若干网络用户的位置,请你选择一个合适的位置建设无线基
站,并在增幅仪的帮助下使所有的用户都能接收到信号,且无线基站的功耗最
小。
注意:由于SHTSC 增幅仪的工作原理依赖地磁场,增幅的方向是恒定的。
输入格式
第一行一个整数:n。平面内的用户个数。之后的n 行每行两个整数x, y,表示一个用户的位置。
第n+2 行一个整数:a。表示增幅仪的增幅方向,单位是度。表示增幅仪的
方向是从x 正方向逆时针转a 度。
第n+3 行一个整数:p。表示增幅仪的放大倍数。
第n+2 行一个整数:a。表示增幅仪的增幅方向,单位是度。表示增幅仪的
方向是从x 正方向逆时针转a 度。
第n+3 行一个整数:p。表示增幅仪的放大倍数。
输出格式
输出一行一个实数,为能够覆盖所有用户的最小椭圆的半短轴长,四舍五入到三位小数。
输入输出样例
输入 #1
2 1 0 -1 0 0 2
输出 #1
0.500
输入 #2
3 1 1 -1 -1 0 0 45 7
输出 #2
0.202
- 对于10%的数据,保证最优方案的中心在原点。
- 对于20%的数据,保证点是随机生成的。
- 对于30%的数据,n≤100。
- 对于50%的数据,n≤5000。
- 对于100%的数据,n≤50000,0≤a<180,1≤p≤100,|x|,|y|≤$2×10^8$。
- 对于20%的数据,保证点是随机生成的。
- 对于30%的数据,n≤100。
- 对于50%的数据,n≤5000。
- 对于100%的数据,n≤50000,0≤a<180,1≤p≤100,|x|,|y|≤$2×10^8$。
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?
提交通过
评测结果:Accepted