QUESTION:
Given an integer array nums of length n, you want to create an array ans of length 2n where ans[i] == nums[i] and ans[i + n] == nums[i] for 0 <= i < n (0-indexed).
Specifically, ans is the concatenation of two nums arrays.
Return the array ans.
Example 1:
Input: nums = [1,2,1]
Output: [1,2,1,1,2,1]
Explanation: The array ans is formed as follows:
- ans = [nums[0],nums[1],nums[2],nums[0],nums[1],nums[2]]
- ans = [1,2,1,1,2,1]
Example 2:
Input: nums = [1,3,2,1]
Output: [1,3,2,1,1,3,2,1]
Explanation: The array ans is formed as follows:
- ans = [nums[0],nums[1],nums[2],nums[3],nums[0],nums[1],nums[2],nums[3]]
- ans = [1,3,2,1,1,3,2,1]
Constraints:
n == nums.length
1 <= n <= 1000
1 <= nums[i] <= 1000
EXPLANATION:
这道题目是一个easy的题目. 其实就是复制一下之前的数组. 如果不用工具类的话.
我们可以知道 ans[i] = nums[ i % nums.size ], 既然知道这个公式, 那么久可以直接这样写就行了.
SOLUTION:
class Solution {
fun getConcatenation(nums: IntArray): IntArray {
var result = IntArray(nums.size * 2)
for (i in result.indices) result[i] = nums[i % nums.size]
return result
}
}