牛客程式設計巔峰賽S2第4場

2021-10-12 17:25:13 字數 1702 閱讀 1194

鑽石&王者

直接呼叫庫函式即可。

return

to_string

(pow

(0.5

,n)*2+

0.005).

substr(0

,4);

這道題的做法是採用二分的方式。二分最近距離的最大值,然後檢查能不能按照這種間隔擺放玩偶。擺放的時候是採用貪心的策略,盡可能地讓擺放的距離等於我們列舉的二分答案。注意先要給結構體排序!

vector s;

int nn,mm,size;

typedef

long

long ll;

bool

cmp(interval a,interval b)

class

solution

if(sum>=nn)

return

true

;else

return

false;}

intdoll

(int n,

int m, vector

& intervals)

return l;}}

;

我們令t[l

]=∑i

=lna

i∗∑j

=i+1

naj,

sum[

l]=∑

i=ln

ai

t[l]=\sum_^n a_i * \sum_ ^n a_j,sum[l]=\sum_ ^n a_i

t[l]=∑

i=ln

​ai​

∗∑j=

i+1n

​aj​

,sum

[l]=

∑i=l

n​ai

​,那麼最終求解的答案就應該是:s=t

[l]−

t[r+

1]−(

sum[

l]−s

um[r

+1])

∗sum

[r+1

]s=t[l]-t[r+1]-(sum[l]-sum[r+1])*sum[r+1]

s=t[l]

−t[r

+1]−

(sum

[l]−

sum[

r+1]

)∗su

m[r+

1]

const

int maxn=

1e5+

100;

const

int mod=

1000000007

;typedef

long

long ll;

ll t[maxn]

,sum[maxn]

;class

solution

ll tot=((

(t[l]

-t[r+1]

)%mod-

(sum[l]

-sum[r+1]

)%mod*sum[r+1]

%mod)

%mod+mod)

%mod;

ans.

push_back

(tot);}

return ans;}}

;

牛客程式設計巔峰賽S2第4場

又沒中獎 題目描述 牛牛最近很喜歡擲硬幣,由於他今天很無聊,所以他在家擲了n次硬幣,如果這n次硬幣全部朝上或者全部朝下牛牛就很開心,請問牛牛開心的概率是多少。每次擲硬幣朝上的概率與朝下的概率相同 示例1輸入複製1 返回值複製 1.00 說明概率為1,四捨五入保留兩位小數的字串為 1.00 示例2輸入...

牛客程式設計巔峰賽S2第2場

鑽石 王者 先從kk k塊糖果中拿出n nn塊糖果平均分給n nn個朋友,剩下的糖果再和牛牛一起平分,答案 k n n 1 frac n 1k n 三個木棒的構不成三角形的邊界情況就是a b c a b c a b c,那麼對於總的木棒長度固定,只要滿足斐波那契數列即可。這個題就是考察層次遍歷的時候...

牛客程式設計巔峰賽S2第8場

牛牛想把乙個數拆成兩個不相等的正整數之和,他想知道一共有多少種拆法,只不過他不知道該如何解決這個問題,所以他想請你幫忙。給定乙個數n,返回將這個數n拆成兩個不相等的正整數之和一共有多少種拆法。注 3 1 2和3 2 1視為同一種拆法 輸入返回值class solution 題目描述牛牛有現在有n個物...