submit page
summary
time limit: 1 sec memory limit: 128 mb submitted: 55 solved: 11
wells最近迷上了一款攻城的策略遊戲,點就去就能當大元帥統帥三軍!
遊戲介面主要是乙個平面(座標可以為浮點數),然而wells發現這遊戲是個**,其實只給了乙個軍隊。
wells初始有乙個軍隊,僅包含n個士兵,每個士兵有乙個初始位置(x,y)和乙個勞累指數wi,每個隊員可以移動,顯然對於每個隊員的移動是需要消耗一些體力的,若第i個隊員從位置(x1,y1)移動到(x2,y2)的體力消耗為wi*(|x2-x1|+|y2-y1|)。
wells希望先將隊伍集合起來,且希望整個隊伍一次集合的體力消耗越少越好。顯然能量消耗的多少直接取決與wells對於會和點(x,y)的選擇,然而wells太懶了,希望你幫他找出某個時刻的最佳會和點。
對於每組資料:
第一行:乙個整數n,表示士兵數目。
第二行:一共n個整數,其中的第i個數wi表示第i個隊員的勞累指數。(
n<=106
)'>(n<=106)
(n<=106)
接下來n行:每一行兩個整數x和y,表示第i個士兵的當前的橫座標和縱座標。(−10
9<=x,
y<=109
)'>(−109<=x,y<=109)
(−109<=x,y<=109)
乙個實數。表示所有隊員集合到最佳攻擊位置的體力消耗總和,答案保留兩位小數。
110 0
0.00wells
題意:帶權中位數
#include#includeview code#include
#include
#include
using
namespace
std;
const
int maxn =1e6+5
;struct
data ;
data num[maxn];
intn,i,j,k;
double
sum,ans,xx,yy;
intxl,yl;
intcmp(data a,data b)
intcmp1(data a,data b)
intmain()
for (i=1; i<=n; i++)
cin>>num[i].x>>num[i].y;
sort(num+1,num+n+1
,cmp);
double mid=sum/2
;
for (i=1; i<=n; i++)
}for (i=1; i<=n; i++)
ans+=num[i].w*(abs(num[i].x-xl));
sort(num+1,num+n+1
,cmp1);
for (i=1; i<=n; i++)
}for (i=1; i<=n; i++)
ans+=num[i].w*(abs(num[i].y-yl));
printf(
"%0.2lf\n
",ans);
return0;
}
湖南多校對抗賽(csu 1560)
簡單的bfs搜尋題,對每個初始的水滴依次擴充套件,當達到規定步數時跳出。這題還是有坑點的,對於每個初始的水滴,已經訪問過的位置不再訪問,但是對於不同的水滴,別的水滴已經訪問過的,對於當前水滴來說可能還要訪問,才能使擴充套件的範圍最大。include include include include i...
湖南多校對抗賽 A A
題意 有一些長方形,面積為1 x或者2 x,現在要算出能把這些 長方形全部包含起來的長方形的大小 2 m 簡單來說就是 給你乙個寬為2的長方形,求出長最小為多少時能把全部長方形 包含起來。解法 因為大的長方形寬始終為2,而其他長方形寬為1 2。即當寬為2的 長方形直接放入 即長度直接加上對於得長度 ...
湖南多校對抗賽 D D
include 題意 有3個只包含大寫字母的字串a,b,c。問能不能從 從a,b中分別拿出n 2個字元組成c串。n為a的長度 解法 直接統計26個大寫字母在a,b,c串中出現的個數,當c串中出現字母時,則看a,b串中這個字母出現的 次數之和 a,b這個字母最多為n 2 是否大於c對應 的個數,否則不...