请填写下面缺失的代码部分,使得函数能够实现上述功能()
int maxNonAdjacentSum(vector<int>& nums) {
int n = nums.size();
vector<int> dp(n); // dp[i]表示以nums[i]结尾的非相邻数字的最大和
dp[0] = nums[0];
dp[1] = max(nums[0], nums[1]);
for (int i = 2; i < n; ++i) {
dp[i] = max(dp[i-1], __(1)__); // 状态转移方程
}
return dp[n-1];
}
