20200823騰訊筆試題

2021-10-23 17:32:27 字數 874 閱讀 9727

題目描述:

現有n個人,要從這n個人中選任意數量的人組成乙隻隊伍,再在這些人中選出一名隊長,求不同的方案對10^9+7取模的結果。如果兩個方案選取的人的集合不同或選出的隊長不同,則認為這兩個方案是不同的。

分析:

因為選擇過程與順序無關,從n個不同元素中取出m個元素的組合數為c(n,m)。則總的方案數為

1 * c(n,1)+2 * c(n,2)+3 * c(n,3)+4 * c(n,4)+…n * c(n,n)

根據數學公式推導,最終上面組合式結果為n2^(n-1)。

思路:因此問題轉化為求 n2^(n-1)。為了降低時間複雜度可用 快速冪

**如下

mod=

1000000007

defmethod

(n):

res=n*mypower(

2,n-1)

print

(res%mod)

defmypower

(a,b)

: level=a

result=

1while

(b!=0)

:if((b&1)

==1):

result = result * level % mod

level=level * level % mod

b = b>>

1return result%mod

if __name__==

"__main__"

: n=

int(

input()

) method(n)

騰訊筆試題

一.單選題 每題4 分,15題,共60分 1.考慮函式原型void hello int a,int b 7,char pszc 下面的函式呼叫鐘,屬於不合法呼叫的是 a hello 5 b.hello 5,8 c.hello 6,d.hello 0,0,2.下面有關過載函式的說法中正確的是 a.過載...

騰訊筆試題

1 請定義乙個巨集,比較兩個數a b的大小,不能使用大於 小於 if語句 2 如何輸出原始檔的標題和目前執行行的行數 3 兩個數相乘,小數點後位數沒有限制,請寫乙個高精度演算法 4 寫乙個病毒 5 有a b c d 四個人,要在夜裡過一座橋。他們通過這座橋分別需要耗時1 2 5 10分鐘,只有一支手...

騰訊筆試題

const的含義及實現機制,比如 const int i,是怎麼做到i只可讀的?const用來說明所定義的變數是唯讀的。這些在編譯期間完成,編譯器可能使用常數直接替換掉對此變數的引用。初探編譯器static const之實現原理 到商店裡買200的商品返還100優惠券 可以在本商店代替現金 請問實際...