题目:667. 优美的排列 II
思路:找规律
class Solution {
public:
vector<int> constructArray(int n, int k) {
vector<int> res(n);
for(int i=0;i < n-(k+1);++i){
res[i] = i+1;
}
int left = n-k;
int right = n;
for(int i= 0;i <k+1;i = i+2){
if(n-k-1+i <n){
res[n-k-1+i] = left++;
}
if(n-k+i <n){
res[n-k+i] = right--;
}
}
return res;
}
};