uvalive 3708 墓地雕塑

2021-08-08 01:48:33 字數 387 閱讀 6347

加入新的雕塑之後,很明顯,坑的位置很固定,假設圈長為一的話每個坑都距離1/(n+m)所以呢原有的雕塑距離為1/n

這時候只需要保持乙個位置不變,其餘的都就近靠就可以了,這樣一定是距離最近的演算法

#include #include #include #include using namespace std;

int main()

{ int n,m;

while(scanf("%d%d",&n,&m)!=eof)

{double ans = 0.0;

for(int i = 1; i < n ; i++)

{double pos = (double)i / n * (n+m);//和圖1-4內容完全一樣

// cout<

墓地雕塑 LA 3708

思路 現在我們猜想,如果之前的n個墓碑至少有乙個是不動的,那麼來了m個墓碑之後的所有墓碑的位置都已經固定了,現在就是看要把之前的n個墓碑都放在哪個位置,現在有乙個結論就是說每個墓碑放在離他最近的位置,這樣就ok了,這麼敲有兩個東西要證明 1 為什麼至少有乙個墓碑是沒有移動的 這個我還沒想好,書上說是...

LA3708墓地雕塑

題意 有n個墓碑,等距離的分布在乙個圓形墓地的周圍,然後又要新增m個墓碑,最後要求所有的墓碑還是等距離,新增的墓碑可以放在任意位置,問之前的n個墓碑的最少移動距離之和是多少?思路 現在我們猜想,如果之前的n個墓碑至少有乙個是不動的,那麼來了m個墓碑之後的所有墓碑的位置都已經固定了,現在就是看要把之前...

Graveyard 墓地雕塑

在乙個周長為10000 的圓上等距分布著n 個雕塑。現在又有m 個新雕塑加入 位置可 以隨意放 希望所有n m 個雕塑在圓周上均勻分布。這就需要移動其中一些原有的雕塑。要求n 個雕塑移動的總距離盡量小。輸入格式 輸入包含若干組資料。每組資料僅一行,包含兩個整數n 和m 2 n 1 000,1 m 1...