RT,求问这份代码为什么会越界?
救救孩子吧
#include<bits/stdc++.h>
using namespace std;
#define P 998244353
#define ll long long
ll f[62][1000001];
ll n,m,i,j,k,Cnt;
int main()
{
scanf("%lld%lld",&n,&m);
f[0][0]=f[0][1]=1;
k=log2(m)+1;
for(i=1;i<k;i++)
{
f[i][0]=1;
for(j=1;j<=n&&j<=i+1;j++)
{
Cnt=(1ll<<i);
if(Cnt-1+Cnt>m)Cnt=m-Cnt+1;
Cnt%=P;
f[i][j]=(f[i-1][j-1]*(Cnt%P)%P+f[i-1][j])%P;
}
}
printf("%lld",f[k-1][n]);
return 0;
}