1 条题解
-
0
XzyStudio (admin) LV 8 MOD RP++ tayz @ 6 个月前
- 1
信息
- ID
- 1097
- 难度
- 9
- 分类
- (无)
- 标签
- (无)
- 递交数
- 1
- 已通过
- 1
- 通过率
- 100%
- 上传者
#include<bits/stdc++.h>
#define int long long
#define p 998244353
using namespace std;
int n,m,f[501][501],ans;
int pw[250001];
signed main(){
ios::sync_with_stdio(false);
freopen("theory.in","r",stdin);
freopen("theory.out","w",stdout);
cin>>n>>m;
pw[0]=1;
for(int i=1;i<=n*n;i++)pw[i]=pw[i-1]*2%p;
f[0][0]=1;
if(m==0){
cout<<1;return 0;
}
for(int i=0;i<=n;i++){
for(int k=i+1;k<=n;k++){
for(int j=0;j<=n;j++){
f[k][j+1]+=f[i][j]*(pw[k-i]-1)%p*pw[(n-k)*(k-i)]%p;
f[k][j+1]%=p;
}
}
}
for(int i=1;i<=n;i++){
ans+=f[i][m];ans%=p;
}
cout<<ans;
}