#include<bits/stdc++.h>
#define int long long
using namespace std;
int t,p,n,x,sx1[305][305],sx2[305][305],dp[305][305][305];
signed main()
{
scanf("%lld%lld",&t,&p);
dp[0][0][0]=1;
for(int m=1;m<=300;m++)
{
for(int l=0;l<=m;l++)
for(int r=0;r<=m;r++)
{
int s1=0;
for(int i=0;i<=l-1;i++)
s1+=dp[m-1][i][r];
int s2=0;
for(int i=0;i<=r-1;i++)
s2+=dp[m-1][l][i];
dp[m][l][r]=(s1+s2)%p;
}
}
while(t--)
{
scanf("%lld%lld",&n,&x);
int s=0;
for(int i=0;i<=n-1;i++)
for(int j=0;j<=n-1;j++)
s=(s+(x-max(i,j)-1)*dp[n-1][i][j])%p;
printf("%lld\n",max(s,0ll));
}
return 0;
}
关键是我 WA 了