为什么这两条语句交换顺序答案就不一样了
- AC
f[l][r] = max(f[l + 1][r], f[l][r - 1]);
if (s[l] == s[r]) f[l][r] = max(f[l][r], f[l + 1][r - 1] + 2);
- WA
if (s[l] == s[r]) f[l][r] = max(f[l][r], f[l + 1][r - 1] + 2);
f[l][r] = max(f[l + 1][r], f[l][r - 1]);
为什么这两条语句交换顺序答案就不一样了
f[l][r] = max(f[l + 1][r], f[l][r - 1]);
if (s[l] == s[r]) f[l][r] = max(f[l][r], f[l + 1][r - 1] + 2);
if (s[l] == s[r]) f[l][r] = max(f[l][r], f[l + 1][r - 1] + 2);
f[l][r] = max(f[l + 1][r], f[l][r - 1]);
好谢谢你!