奇蹟的歌單

發布時間: Sept. 15, 2022, 5:05 p.m.   最後更新時間: Sept. 14, 2023, 10:06 p.m.   時間限制: 500ms   記憶體限制: 128M

有一位歌聲美妙的歌姬,名為奇蹟

有天,她正煩惱著一個月後的萬聖節演唱會要唱哪些歌,但實在有太多報告讓她沒時間好好思考

經過溝(甩)通(鍋),主辦單位要她同一首歌重複唱幾次也不成問題(真是血汗的歌姬QQ)

不得已的奇蹟發了IG的問答箱徵詢粉絲的意見

已知奇蹟能挑$k$首歌來唱,每首歌最多唱$a_i$次

請身為奇蹟的經紀人的你,請你幫她算出,對於每個回應$n$,總共唱$n$次歌的選擇有幾種?

下圖為被報告所折磨的血汗奇蹟:


1662289065997.png

第一行有一個正整數$k$,代表歌姬有k首歌能挑來唱,$(1 \leq k \leq 100)$
第二行有$k$個正整數$a_i,(1 \leq i \leq k, a_i \leq 50)$
接下來有多行輸入,每行有一個正整數$n$,代表某位粉絲希望她唱$n$次歌,保證$n$不超過所有$a_i$的總和

對於每個輸入$n$,因為方法數可能很多,請輸出方法數對$10^9+7$取餘後的值

複製範例
2
2 3
0
2
3
1
3
3
複製範例
3
3 3 3
1
4
5
3
12
12

範例一裡,奇蹟有2首歌能挑,第一首歌最多只能唱2次,第二首3次
唱0首歌的方法數是1 (都不唱)
唱2首歌的方法數是3 : (0,2)、(1,1)、(2,0)
唱3首歌的方法數是3 : (0,3)、(1,2)、(2,1)

math dp

第38th進階組資格考