LA3708 Graveyard 墓地雕塑
2015-03-04 11:58
288 查看
</pre><span style="font-size:12px;">题意是原本n个墓碑均匀分布在一个周长为10000的圆周上,现在加入m个,如果要使得n+m个墓碑都均匀分布的话,那么原来的墓碑最少的移动总距离是多少。</span></h1><div><span style="font-family:微软雅黑"><span style="font-size:12px;"><span style="line-height: 20.880001068115234px;"> 由样例画图可以观察到样例可以有个共同特点,就是无论加多少,原来有多少,都可以让原来有一个雕塑没有移动。我没可以吧没有移动的雕塑看作原 点,而把 其他点按逆时针标记。我们可以把距离按等比例缩小,使后来的等距为1,。接下来移动的,若没有重合,则为最优</span><span style="line-height: 20.880001068115234px;">。</span></span></span></div><div><span style="font-family:微软雅黑"><span style="font-size:12px;"><span style="line-height: 20.880001068115234px;"> </span></span></span><pre name="code" class="java">package 课后;
import java.util.Scanner;
public class la3708
{
public static void main(String[] args)
{
int n = 0,m = 0;
Scanner input=new Scanner(System.in);
while(input.hasNext()==true){
n=input.nextInt();
m=input.nextInt();
double ans=0.0;
for(int i=1;i<n;i++){
double pos=(double)i/n*(n+m);//计算每个需要移动的雕塑的坐标,注意不需要移动的为原点。
ans += Math.abs(pos-Math.floor(pos+0.5))/(n+m);///(n+m)是把距离等比例缩小,因为距离就是原来的点到等距点的距离,至于移到那个点,完全是看离哪个近
}
System.out.printf("%.4lf\n",ans*10000);
}
}
}
相关文章推荐
- LA3708 Graveyard 墓地雕塑
- LA3708 Graveyard 墓地雕塑
- LA3708 Graveyard 墓地雕塑-水题
- LA3708 - Graveyard(墓地)
- 墓地雕塑(Graveyard, NEERC 2006, LA 3708)
- 墓地雕塑(Graveyard, NEERC 2006, LA 3708)
- 【贪心】【POJ3154】墓地雕塑(Graveyard, NEERC 2006, LA 3708)需要稍稍加工的(先贪心,再确保能这样贪(可行性&&如果可行必定最优&&非证明最优性)的题)(K)
- 墓地雕塑-LA3708
- UVa 1388 Graveyard 墓地雕塑
- 【贪心】【POJ3154】墓地雕塑(Graveyard, NEERC 2006, LA 3708)需要稍稍加工的(先贪心,再确保能这样贪(可行性&&如果可行必定最优&&非证明最优性)的题)(K)
- (LA 3708)墓地雕塑(Graveyard )
- LA 3708 Graveyard 墓地雕塑 NEERC 2006
- LA3708 墓地雕塑
- LA3708 墓地雕塑
- LA 3708 - Graveyard 墓地雕塑
- graveyard,neerc(墓地雕塑)
- 墓地雕塑(Graveyard, NEERC 2006, LA 3708)
- Graveyard(墓地雕塑)
- [ACM_数学] LA 3708 Graveyard [墓地雕塑 圈上新加点 找规律]
- LA 3708 墓地雕塑