直白思路:处理出sum[i]表示a[i]一直到a[i+k-1]的和,对于n道题来说,一共有sum数组有n-k+1个值,现在的难点就是在这个sum数组里面找两个不相邻的值,相加使之最大。

用manx维护之前出现的最大sum,在于现在循环到的sum[i]相加判断是否为最大值

 for (int i = k+1; i <=n-k+1 ; ++i) {
           maxn=max(maxn,sum[i-k]);
           ans=max(ans,maxn+sum[i]);
}