rt,除了数组的第一维和第二维交换了其余都一样。
#include<bits/stdc++.h>
using namespace std;
const int mod = 147744151;
int f[455][100005][2];
int main()
{
f[0][0][1] = 1;
for(int j = 1;j <= 450;j++)
for(int i = 0;i <= 100000;i++)
{
if(i - j >= 0) f[j][i][1] = (f[j][i - j][1] + f[j][i - j][0]) % mod;
f[j][i][0] = f[j - 1][i][1];
}
return 0;
}
#include<bits/stdc++.h>
using namespace std;
const int mod = 147744151;
int f[100005][455][2];
int main()
{
f[0][0][1] = 1;
for(int j = 1;j <= 450;j++)
for(int i = 0;i <= 100000;i++)
{
if(i - j >= 0) f[i][j][1] = (f[i - j][j][1] + f[i - j][j][0]) % mod;
f[i][j][0] = f[i][j - 1][1];
}
return 0;
}