LA 3708
2024-08-30 22:09:38
题意:
在一个周长为10000的圆上等距分布着n 个雕塑,现在又有m 个新雕塑加入(位置可以随意放置),
希望所有(n+m)个雕塑在圆周上均匀分布,这就需要移动其中一些雕塑,要求n个雕塑移动的总距离尽量小。
【输入格式】
输入包含若干组数据。每组数据仅一行,包含两个整数n和m(2≤n≤1000,1≤m≤1000),即原始雕塑数量和新加雕塑数量。
输入结束标志为文件结束符(EOF)
【输出格式】
输入仅一行,为最小距离,精确到小数后四位。
【样例输入】
2 1
2 3
3 1
10 10
【样例输出】
1666.6667
1000.0
1666.6667
0.0
【代码】
//2019.4.21 墓地雕塑
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std; int main()
{
int n, m;
while (scanf_s("%d%d", &n, &m) == )
{
double ans = 0.0;
for (int i = ; i < n; i++)
{
double pos = (double)i / n*(n + m);//计算每个需要移动的雕塑的坐标
ans += fabs(pos - floor(pos + 0.5)) / (n + m);//fabs浮点数取绝对值,floor向下取整,floor(x+0.5)类似round四舍五入
//先计算出需要移动的雕塑坐标,计算移动最短距离,换算成(n+m)比例
}
cout <<fixed<<setprecision()<< ans * ;//格式化输出保留四位小数
}
return ;
}
最新文章
- WPF DataGrid 性能加载大数据
- sublime_text_2 ubuntu下无法输入中文 解决方法
- mui框架中底部导航的跳转1
- PC上安装多个操作系统
- iframe中的各种跳转方法
- 第一篇、C_高精度加法
- 移动前端开发之viewport的深入理解(转载)
- Know Thy Complexities!
- 北京哪儿有卖tods豆豆鞋的?在线等答案、、、、(类似动物园、西单等地)_百度知道
- WIZnet通过启动在线培训活动:计算机网络TCP/IP协议而事实上,现在的方法
- OCP-1Z0-051-题目解析-第3题
- UIscrollView 代理
- Python3分析sitemap.xml抓取导出全站链接
- Lniux下安装mysql----编译版
- ctf中常见注入题源码及脚本分析
- JavaScript之去除前后空格//g
- POI 的API大全二
- CVTE前端一面
- 小组团队项目的NABCD分析
- 搭建Hexo博客(三)—换电脑继续写Hexo博客
热门文章
- 使用jxl 解析Excel
- c3p0、dbcp和proxool比较
- XP下安装IIS的图文教程(无光盘)
- onload函数和自执行函数的区别(jquery API网址:http://jquery.cuishifeng.cn/)
- Codeforces 712D DP
- php魔术方法__SET __GET
- 一张图5分钟熟悉MarkDown的基本语法
- 在OpenSSL中添加自定义加密算法
- tp5 whereOr
- tomcat端口作用