class Solution {
public:intwiggleMaxLength(vector<int>& nums){int result =1;int flag =0;int pre =0;int cur =0;while(cur < nums.size()){// 初始化if(flag ==0&& nums[pre]!= nums[cur]){if(nums[pre]< nums[cur]){
flag =-1;}elseif(nums[pre]> nums[cur]){
flag =1;}
pre = cur;
cur++;
result =2;}// 未初始化elseif(flag ==0&& nums[pre]== nums[cur]){
pre = cur;
cur++;}// 相同符号elseif((flag >0&& nums[pre]>= nums[cur])||(flag <0&& nums[pre]<= nums[cur])){
pre = cur;
cur++;continue;}//符号改变else{
flag *=-1;
pre = cur;
cur++;
result++;}}return result;}};
class Solution {
public:intmaxSubArray(vector<int>& nums){int result = nums[0];int sum =0;int index =0;while(index < nums.size()){
sum =max(nums[index], sum + nums[index]);
result =max(sum, result);
index++;}return result;}};