首页 > 其他 > 详细

667. Beautiful Arrangement II 美丽的安排2

时间:2018-01-10 23:33:26      阅读:264      评论:0      收藏:0      [点我收藏+]
 Given two integers n and k, you need to construct a list which contains n different positive integers ranging from 1 to n and obeys the following requirement: 

Suppose this list is [a1, a2, a3, ... , an], then the list [|a1 - a2|, |a2 - a3|, |a3 - a4|, ... , |an-1 - an|] has exactly k distinct integers.

If there are multiple answers, print any of them.

Example 1:

Input: n = 3, k = 1
Output: [1, 2, 3]
Explanation: The [1, 2, 3] has three different positive integers ranging from 1 to 3, and the [1, 1] has exactly 1 distinct integer: 1.

Example 2:

Input: n = 3, k = 2
Output: [1, 3, 2]
Explanation: The [1, 3, 2] has three different positive integers ranging from 1 to 3, and the [2, 1] has exactly 2 distinct integers: 1 and 2.

Note:

  1. The n and k are in the range 1 <= k < n <= 104.

  1. /**
  2. * @param {number} n
  3. * @param {number} k
  4. * @return {number[]}
  5. */
  6. var constructArray = function (n, k) {
  7. let res = [];
  8. for (let i = 1, j = n; i <= j;) {
  9. if (k > 1) {
  10. res.push(k-- % 2 ? i++ : j--);
  11. } else {
  12. res.push(i++);
  13. }
  14. }
  15. return res;
  16. };
  17. let n = 3;
  18. let k = 2;
  19. let res = constructArray(n, k);
  20. console.log(res);





667. Beautiful Arrangement II 美丽的安排2

原文:https://www.cnblogs.com/xiejunzhao/p/8261636.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!