2022年11月26日 星期六

[334] Increasing Triplet Subsequence

先來一個超過時間的版本嗎XD

bool increasingTriplet(int* nums, int numsSize){
for (int i=0;i<numsSize-2; i++)
for (int j=i+1;j<numsSize-1;j++)
{
if (nums[i]>=nums[j])
continue;
for (int k=j+1;k<numsSize;k++)
{
if (nums[j]>=nums[k])
continue;
if (nums[i]<nums[j] && nums[j]<nums[k])
return true;
}
}
return false;
}

看過別人的寫法之後,再次感嘆自己不聰明XD

bool increasingTriplet(int* nums, int numsSize){
int low =INT_MAX;
int mid = INT_MAX;
for (int i=0;i<numsSize; i++)
{
if (nums[i]>mid)
return true;
else if (nums[i]< low)
low=nums[i];
else if (nums[i]>low && nums[i]<mid)
mid=nums[i];
}
return false;
}

沒有留言:

張貼留言