本来有机会过1=线(GD
int g = c - ((d + (f >> 1)) & 1);
dp[a][b][c][d + f / 2] = (dp[a][b][c][d + f / 2] + dp[a - 1][e][g][f] * comb(b, d) % MOD * power(v[a], d) % MOD) % MOD;
int g = c - ((d + (f >> 1)) & 1);
if (g < 0)
continue;
dp[a][b][c][d + f / 2] = (dp[a][b][c][d + f / 2] + dp[a - 1][e][g][f] * comb(b, d) % MOD * power(v[a], d) % MOD) % MOD;
100pts⟶0pts