정렬된 숫자 목록이 있다고 가정합니다. 각 요소를 제곱하고 정렬된 순서로 출력을 찾아야 합니다. 음수와 0을 입력할 수도 있습니다.
따라서 입력이 [-12,-6,-5,-2,0,1,2,4,8,9,10,15,18,20,35,38,69]와 같으면 출력은 [0,1, 4, 4, 16, 25, 36, 64, 81, 100, 144, 225, 324, 400, 1225, 1444, 4761]
이 문제를 해결하기 위해 다음 단계를 따릅니다. −
- 새 목록 만들기 L
- nums의 각 요소 e에 대해:
- E^2를 L에 삽입
- L을 정렬된 순서로 반환합니다.
이해를 돕기 위해 다음 구현을 살펴보겠습니다. −
예시
class Solution: def solve(self, nums): return sorted(x * x for x in nums) ob = Solution() nums = [1,2,4,8,9,10,15,18,20,35,38,69] print(ob.solve(nums))
입력
[-12,-6,-5,-2,0,1,2,4,8,9,10,15,18,20,35,38,69]
출력
[ 1, 4, 4, 16, 25, 36, 64, 81, 100, 144, 225, 324, 400, 1225, 1444, 4761]