/**
* Return an array of size *returnSize.
* Note: The returned array must be malloced, assume caller calls free().
*/int*maxSlidingWindow(int* nums,int numsSize,int k,int* returnSize){if(numsSize ==0)returnNULL;*returnSize = numsSize - k +1;if(numsSize==1){if(k==1){int*ans =(int*)malloc(*returnSize*sizeof(int));
ans[0]= nums[0];return ans;}}int*ans =(int*)malloc(*returnSize*sizeof(int));int max=INT_MIN;int dp[numsSize];int i =0;for(int i =0, j, max = INT_MIN,first =-1; i <*returnSize;++i){if(first < i){for(max = nums[i], first = i, j = i +1; j < k + i;++j){if(max < nums[j]){
max = nums[j];
first = j;}}}elseif(nums[i + k -1]>= max){
first = i + k -1;
max = nums[i + k -1];}
ans[i]= max;}return ans;}
intclimbStairs(int n){if(n==1)return1;int first =1;int second =2;int i;int third;for(i=3;i<=n;i++){
third = first + second;
first = second;
second = third;}return second;}
ps 这样防止时间超限