題面:
老唐最近迷上了飛盤,約翰想和他一起玩,於是打算從他家的n頭奶牛中選出一支隊伍。每只奶牛的能力為整數,第i頭奶牛的能力為r i 。飛盤隊的隊員數量不能少於 1、大於n。一支隊伍的總能力就是所有隊員能力的總和約翰比較迷信,他的幸運數字是f,所以他要求隊伍的總能力必須是f的倍數。請幫他這個題目格式很sb,直接給飛機票算一下,符合這個要求的隊伍組合有多少?由於這個數字很大,只要輸出答案除以 10^8的餘數就可以了。
輸入格式
第一行:兩個用空格分開的整數:n和f,1 ≤ n ≤ 2000,1 ≤ f ≤ 1000
第二行到n + 1行:第i + 1行有乙個整數r i ,表示第i頭奶牛的能力,1 ≤ r i ≤ 10 5
輸出格式
第一行:單個整數,表示方案數除以 10^810 8
的餘數
樣例 fristeam.in fristeam.out
4 5 1 2 8 2 3 (有兩種方案都是8 + 2 = 10,只是選的奶牛)
當然大大大大大佬們會覺得本題相當的簡單,但是我真的是乙個弱雞
……仔細想不難想
f[i][j]=(f[i][j]+f[i-1][j]+f[i-1][((j-a[i])%m+m)%m])%mod;
f[i][j]表示前i個牛飛盤隊達到j值得方案數,分別由f[i][j](當前這個牛飛盤本身能達到要求),f[i-1][j]不選用當前這個牛飛盤隊,f[i-1]((j-a[i])%m+m)%m
再預處理那些牛飛盤隊能滿足要求就ok,雖然非常簡單但我第一眼想不到……哭了
上**
#include
using namespace std;
const int n = 2010, m = 1010;
const int mod = 1e8;
int n, m;
int f[n][m], a[n];
int main()
c 弱雞執行緒池的實現
把之前做的筆記一次性挪到部落格上好嘍 這是乙個固定數量的執行緒池,執行緒任務可帶引數,非同步返回返回值,本菜雞花了一天才看明白這是怎麼回事,用到了很多c 11的特性,比如bind function future等 class threadpool template classf,class.args...
牛客假日團隊賽6 D 迷路的牛
時間限制 c c 1秒,其他語言2秒 空間限制 c c 32768k,其他語言65536k 64bit io format lld farmer john的三頭獲獎奶牛bessie elsie和mildred,總是會迷路走到農場上遙遠的地方去!他需要你幫助將她們一起趕回來。農場的草地大體是一塊狹長的...
牛客 D白兔的字串
白兔有乙個字串t。白雲有若干個字串s1,s2 sn。白兔想知道,對於白雲的每乙個字串,它有多少個子串是和t迴圈同構的。所有字元都是小寫英文本母 第一行乙個字串t t 10 6 第二行乙個正整數n n 1000 接下來n行為s1 sn s1 s2 sn 107 max s1 s2 s3 s4 sn 1...