class Solution { public: bool validPartition(vector<int>& nums) { int n = nums.size(); vector<bool> f(n + 1, false); f[0] = true; for(int i = 2; i <= n; i ++ ) { if(nums[i - 1] == nums[i - 2]) f[i] = f[i] || f[i - 2]; if(i >= 3) { if(nums[i - 1] == nums[i - 2] && nums[i - 2] == nums[i - 3]) f[i] = f[i] || f[i - 3]; if(nums[i - 1] - nums[i - 2] == 1 && nums[i - 2] - nums[i - 3] == 1) f[i] = f[i] || f[i - 3]; } } return f[n]; } };用c++重写这个代码
时间: 2024-03-14 15:46:22 浏览: 90
字节跳动2018校招大数据方向(第一批).pdf
以下是使用C++重写的代码:
```c++
class Solution {
public:
bool validPartition(vector<int>& nums) {
int n = nums.size();
vector<bool> f(n + 1, false);
f[0] = true;
for(int i = 2; i <= n; i ++) {
if(nums[i - 1] == nums[i - 2]) f[i] = f[i] || f[i - 2];
if(i >= 3) {
if(nums[i - 1] == nums[i - 2] && nums[i - 2] == nums[i - 3])
f[i] = f[i] || f[i - 3];
if(nums[i - 1] - nums[i - 2] == 1 && nums[i - 2] - nums[i - 3] == 1)
f[i] = f[i] || f[i - 3];
}
}
return f[n];
}
};
```
阅读全文