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

2021-10-11 01:45:09 字數 2551 閱讀 9634

又沒中獎 =_=

題目描述

牛牛最近很喜歡擲硬幣,由於他今天很無聊,所以他在家擲了n次硬幣,如果這n次硬幣全部朝上或者全部朝下牛牛就很開心,請問牛牛開心的概率是多少。(每次擲硬幣朝上的概率與朝下的概率相同)

示例1輸入複製1

返回值複製

「1.00」

說明概率為1,四捨五入保留兩位小數的字串為"1.00"

示例2輸入複製5

返回值複製

「0.06」

說明概率為0.0625,四捨五入保留兩位小數的字串為"0.06"

備註:對於50%50%的資料:1\leq n\leq1001≤n≤100

對於100%100%的資料:1\leq n\leq1e91≤n≤1e9

對於每個n,返回乙個嚴格四捨五入保留兩位小數的字串。

比如概率為0.372的話,返回字串"0.37"。

概率為0.957的話,返回字串"0.96"。

(注意,返回的字串不帶引號)

**題

#

# 返回乙個嚴格四捨五入保留兩位小數的字串

# @param n int整型 n

# @return string字串

二分

/**

* struct interval

* };

*/class

solution

bool

check

(long

long mid, vector

& intervals,

int n)

if(cnt >= n)

return1;

}return0;

}bool

check1

(long

long mid, vector

& intervals,

int n)

return0;

}int

doll

(int n,

int m, vector

& intervals));

long

long l =

0, r =(1

<<31-

1);while

(l < r)

return l;}}

;

示例1

輸入複製

[1,2,5,3,4],[1,4,2,5,2,2]

返回值複製

[41,71,0]

說明第乙個詢問,l=1,r=4,ans=12+15+13+25+23+53=41;

第二個詢問,l=2,r=5,ans=25+23+24+53+54+34=71;

第三個詢問,l=2,r=2,ans=0。

備註:引數a為vector,依次為a1,a2,…,an;

引數query為vector,依次為l1,r1,l2,r2,…,lq,rq;

n為陣列a長度,q為詢問次數。

30% 資料滿足 1<=n,q<=1000

100% 資料滿足 1<=n,q<=100000,1<=ai<=100000,1<=li<=ri<=n

題解

九九乘法表,劃掉對角線,字首和優化

1x1=1 1x2=2 1x3=3

2x1=2 2x2=4 2x3=6

3x1=3 3x2=6 3x3=9

= sum x 1 + sum x 2 + sum x 3

= sum x sum

1x1=1 1x2=2 1x3=3

2x1=2 2x2=4 2x3=6

3x1=3 3x2=6 3x3=9

= sum x sum - (1 x 1 + 2 x 2 + 3 x 3)

另一種思路:

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

鑽石 王者 直接呼叫庫函式即可。return to string pow 0.5 n 2 0.005 substr 0 4 這道題的做法是採用二分的方式。二分最近距離的最大值,然後檢查能不能按照這種間隔擺放玩偶。擺放的時候是採用貪心的策略,盡可能地讓擺放的距離等於我們列舉的二分答案。注意先要給結構體...

牛客程式設計巔峰賽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個物...