Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
35177 liuziming 【S】T2 C++ 解答错误 0 16 MS 45568 KB 934 2024-11-28 15:33:41

Tests(0/4):


#include<bits/stdc++.h> using namespace std; #define int long long #define mod 998244353 int n,dp[2010][2010],g[2010][2010]; string s; signed main(){ cin>>n; cin>>s; dp[0][0]=1; //cout<<n<<'\n'; for(int i=1;i<=n;i++){ //cout<<s[i-1]<<' '; if(s[i]=='0'){ int sum=dp[i-1][0]; for(int j=1;j<=i;j++){ dp[i][j]=(dp[i][j]+dp[i-1][j-1]*(j-1)+sum)%mod; sum=(sum+dp[i-1][j])%mod; } }else{ for(int j=0;j<=i;j++){ dp[i][j]=(dp[i][j]+dp[i-1][j]*(i-j))%mod; } } }int ans=0; // for(int i=1;i<=n;i++){ // for(int j=1;j<=n;j++){ // cout<<dp[i][j]<<' '; // }cout<<'\n'; // }for(int i=1;i<=n;i++){ // cout<<g[i]<<' '; // } for(int i=0;i<=n;i++){ ans=(ans+dp[n][i])%mod; }cout<<ans<<'\n'; }


测评信息: