#include <iostream>
using namespace std;
int main()
{
int t, n, k;
cin >> t;
getchar();
while (t-- && cin >> n >> k)
{
int s[15];
int c[9];
memset(s, 0, sizeof s);
while(k--)
{
int a, b;
cin >> a >> b;
s[a] = b; //学分为a的课有b门
}
int cnt = 0;
for(c[8]=0;c[8]<=s[8]&&c[8]*8<=n;c[8]++)
for(c[7]=0;c[7]<=s[7]&&c[7]*7+c[8]*8<=n;c[7]++)
for(c[6]=0;c[6]<=s[6]&&c[6]*6+c[7]*7+c[8]*8<=n;c[6]++)
for(c[5]=0;c[5]<=s[5]&&c[5]*5+c[6]*6+c[7]*7+c[8]*8<=n;c[5]++ )
for(c[4]=0;c[4]<=s[4]&&c[4]*4+c[5]*5+c[6]*6+c[7]*7+c[8]*8<=n;c[4]++)
for(c[3]=0;c[3]<=s[3]&&c[3]*3+c[4]*4+c[5]*5+c[6]*6+c[7]*7+c[8]*8<=n;c[3]++)
for (c[2] = 0; c[2] <= s[2] && c[2] * 2 + c[3] * 3 + c[4] * 4 + c[5] * 5 + c[6] * 6 + c[7] * 7 + c[8] * 8 <= n; c[2]++)
{
c[1] = n - (c[2] * 2 + c[3] * 3 + c[4] * 4 + c[5] * 5 + c[6] * 6 + c[7] * 7 + c[8] * 8);
if (c[1] >= 0 && c[1] <= s[1])
cnt++;
}
cout << cnt << endl;
}
return 0;
}
hdu 2079学分
最新推荐文章于 2024-06-12 20:44:27 发布