私は何かを追加することを頼んでいました。 。私は追加するものを知っています。このラインは無駄です。 編集を提案するこのコードでrem == 0とrem = 0の違いは何ですか?
#include using namespace std;
typedef long long lli;
lli mod = 1000000007;
int n;
char a[200000 + 10];
lli dp[200000 + 10][9];
lli solve(int pos, int rem)
{
if (pos == n) //**HERE**
return (rem == 0);
if (dp[pos][rem] != -1)
return dp[pos][rem];
dp[pos][rem] = 0;
if (pos + 1 <= n)
dp[pos][rem] = solve(pos + 1, (rem * 10 + (a[pos] - '0')) % 8);
if (pos + 1 <= n)
dp[pos][rem] += solve(pos + 1, rem);
dp[pos][rem] %= mod;
return dp[pos][rem];
}
rem == 0はrem値をゼロで比較し、rem = 0はrem変数でゼロ割り当てを意味します。 – rsp
もし(rem == 0)が真ならば、それは1を返しますか? –
はい、trueの場合は1を返し、そうでない場合は0を返します。 – rsp