【題目描述】小 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。牛牛和羊羊輪流抽牌,牛牛先抽,每次抽牌,他們也可以從紙牌堆中任意選擇一張抽出,直到紙牌被抽完。他們的得分等於他們抽到的紙牌數字總和。現在假設牛牛和羊羊都採用最優策略,請你計算出遊戲結束後牛牛得分減去羊羊得分等於...