https://www.luogu.com.cn/record/220838041
#include <iostream>
using namespace std;
typedef long long ll;
const ll N=1010;
const ll mod=1e9+7;
ll T;
ll n,m;
ll a[N];
ll c[N][N];
ll ans;
int main()
{
cin>>T;
for(ll i=0;i<N;i++)
{
for(ll j=0;j<=i;j++)
{
if(j==0)
{
c[i][j]=1;
}
else
{
c[i][j]=c[i-1][j]+c[i-1][j-1];
}
}
}
while(T--)
{
cin>>n>>m;
ll sum=0;
ans=1;
for(ll i=1;i<=m;i++)
{
cin>>a[i];sum+=a[i];
}
if(sum>n) n++;
for(ll i=1;i<=m;i++)
{
ans=(ll)((c[n][a[i]]*ans)%mod);
n-=a[i];
}
cout<<ans%mod<<'\n';
}
return 0;
}