SSLOJ 1440 能量傳輸 思維

2021-09-29 14:48:36 字數 1067 閱讀 4665

傳送門

給出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位同學的身高,計算最少需要幾位同學出列,...