# LeetCode 1920 ###### tags: `python` `LeetCode` >LeetCode 第1920解題 >使用Python ## 題目 ``` Given a zero-based permutation nums (0-indexed), build an array ans of the same length where ans[i] = nums[nums[i]] for each 0 <= i < nums.length and return it. A zero-based permutation nums is an array of distinct integers from 0 to nums.length - 1 (inclusive). ``` ``` Example 1: Input: nums = [0,2,1,5,3,4] Output: [0,1,2,4,5,3] Explanation: The array ans is built as follows: ans = [nums[nums[0]], nums[nums[1]], nums[nums[2]], nums[nums[3]], nums[nums[4]], nums[nums[5]]] = [nums[0], nums[2], nums[1], nums[5], nums[3], nums[4]] = [0,1,2,4,5,3] ``` ``` Example 2: Input: nums = [5,0,1,2,3,4] Output: [4,5,0,1,2,3] Explanation: The array ans is built as follows: ans = [nums[nums[0]], nums[nums[1]], nums[nums[2]], nums[nums[3]], nums[nums[4]], nums[nums[5]]] = [nums[5], nums[0], nums[1], nums[2], nums[3], nums[4]] = [4,5,0,1,2,3] ``` ## 解題思路 ``` nums = [0,2,1,5,3,4] ans = [0,1,2,4,5,3] n is the lenth of nums ans[0] = nums[0] . . . ans[n-1] = nums[n-1] #1. idx = 0, ans[0] = nums[0] = 0 #2. idx = 2, ans[1] = nums[2] = 2 #6. idx = 4, ans[5] = nums[4] = 3 ``` ## 程式碼 ``` def buildArray(nums: List[int]): ans = [] for idx in nums: ans.append(nums[idx]) return ans ``` ###### 作者:@allianRZ