傳送門
給出n
nn個人的能量,間隔為k
kk的兩個人才能傳遞能量,問最少要用多少次才能使所有人的能量相等
我們可以與洛谷上的糖果傳遞進行模擬,那道題的間隔是0
00,但在這裡是k
kk所以我們可以以i
ii這個點開始暴力求出乙個環,環上的點都恰好間隔為k
kk,這樣一來單獨看環的話每個點的間隔都是000了
我們就直接按照糖果傳遞的方法來跑
#include
#include
#include
#include
#include
#include
#include
#include
#define ll long long
using
namespace std;
inline ll read()
while
(s>=
'0'&&s<=
'9')
return d*f;
}ll tf[
500005
],x[
500005
],y[
500005
],a,xx[
500005];
intmain()
for(ll i=
1;i<=len;i++
) xx[i]
=xx[i-1]
+y[i]
-a;sort
(xx+
1,xx+
1+len)
; ll e;
if(len&
1) e=xx[len/2+
1];else e=
(xx[len/2]
+xx[len/2+
1])/
2;for(ll i=
1;i<=len;i++
) ans+
=abs
(xx[i]
-e);
} cout
}
SSLOJ 杯子 模擬
小明買了n個容積可以是無窮大的杯子,剛開始的時候每個杯子裡有1公升水,接著小明發現杯子實在太多了,於是他決定保留不超過k個杯子。每次他選擇兩個當前含水量相等的杯子,把乙個杯子的水全部倒進另乙個裡,然後把空瓶丟棄。不能丟棄有水的杯子 顯然在有些情況下小明無法達到他的目標,比如n 3,k 1。此時小明會...
14 4 選單功能
選單功能就是與使用者的溝通介面。1 在workermanager.h標頭檔案中新增show menu 成員函式。class workermanager 2 在workermanager.cpp中實現show menu 成員函式。其實這個函式就是在螢幕中把選單介面列印出來,沒什麼技術含量。顯示選單 v...
SSLOJ 合唱隊形
n位同學站成一排,老師要請其中的 n k 位同學出列,使得剩下的k位同學排成合唱隊形。合唱隊形是指這樣的一種隊形 設k位同學從左到右依次編號為1,2 k,他們的身高分別為t1,t2,tk,則他們的身高滿足t1 ti 1 tk 1 i k 你的任務是,已知所有n位同學的身高,計算最少需要幾位同學出列,...