騰訊2018秋招筆試真題 小Q的歌單

2021-08-21 18:41:04 字數 1014 閱讀 5654

【題目描述】小 q 有 x 首長度為 a 的不同的歌和 y 首長度為 b 的不同的歌,現在小 q 想用這些歌組成乙個

總長度正好為 k 的歌單,每首歌最多只能在歌單中出現一次,在不考慮歌單內歌曲的先後順序的情況下,

請問有多少種組成歌單的方法。

輸入描述:

每個輸入包含乙個測試用例。

每個測試用例的第一行包含乙個整數,表示歌單的總長度 k(1<=k<=1000)。

接下來的一行包含四個正整數,分別表示歌的第一種長度 a(a<=10)和數量 x(x<=100)以及歌的第二種長度

b(b<=10)和數量 y(y<=100)。保證 a 不等於 b。

輸出描述:

輸出乙個整數,表示組成歌單的方法取模。因為答案可能會很大,輸出對 1000000007 取模的結果。

輸入示例:

5 2 3 3 3

輸出示例:

9

解題思路:

1)歌單存在時要滿足的條件

i * a <= k && (k - a * i) % b == 0 && (k - a * i) / b <= y

2)需要用得到的公式:

從i個不同元素中,選擇j個的組合數目,記為c[i][j],則滿足

c[i][j] = (c[i - 1][j - 1] + c[i - 1][j])

#include 

#include//system()

using

namespace

std;

long

long c[105][105];

const

int mod = 1000000007;

void init()

}int main()

printf("%lld\n", ans);

system("pause");

return

0;}

注:參考了牛客網解答。

小Q的歌單 騰訊2018秋招

題目描述 小q有x首長度為a的不同的歌和y首長度為b的不同的歌,現在小q想用這些歌組成乙個總長度正好為k的歌單,每首歌最多只能在歌單 現一次,在不考慮歌單內歌曲的先後順序的情況下,請問有多少種組成歌單的方法。輸入描述 每個輸入包含乙個測試用例 每個測試的第一行包含乙個整數,表示歌單的總長度k 1 k...

2017秋招筆試C 真題

c 伺服器端 2017秋招 b站 1 不用除法和取餘 實現兩個數的除法和取餘操作 2 如何保持會話連線?如何實現負載均衡?實現負載均衡會話保持需要修改嗎?通過什麼方法實現負載均衡?3 linux五種i o模型?c 流 2017秋招 好未來 1 將一句話的單詞進行倒置,標點不倒置。比如 i like ...

騰訊2018秋招筆試題之紙牌遊戲

題目描述 牛牛和羊羊正在玩乙個紙牌遊戲,這個遊戲一共有n張紙牌,第i張紙牌上寫著數字ai。牛牛和羊羊輪流抽牌,牛牛先抽,每次抽牌,他們也可以從紙牌堆中任意選擇一張抽出,直到紙牌被抽完。他們的得分等於他們抽到的紙牌數字總和。現在假設牛牛和羊羊都採用最優策略,請你計算出遊戲結束後牛牛得分減去羊羊得分等於...