num이라는 요소 목록이 있다고 가정하고 모든 숫자가 짝수 번 나타나는지 여부를 확인해야 합니다. 상수 공간을 사용하여 해결해야 합니다.
따라서 입력이 nums =[8, 9, 9, 8, 5, 5]와 같으면 모든 숫자가 두 번 발생했기 때문에 출력은 True가 됩니다.
이 문제를 해결하기 위해 다음 단계를 따릅니다. −
-
숫자의 크기가 홀수이면
-
거짓을 반환
-
-
목록 번호 정렬
-
범위 1에서 숫자 크기까지의 i에 대해
-
nums[i]가 nums[i - 1]과 같으면
-
숫자[i] :=0,
-
숫자[i - 1] :=0
-
-
-
nums에 있는 모든 요소의 합이 0과 같으면 true를 반환하고 그렇지 않으면 false를 반환합니다.
예
더 나은 이해를 위해 다음 구현을 살펴보겠습니다.
def solve(nums): if len(nums) & 1: return False nums.sort() for i in range(1, len(nums)): if nums[i] == nums[i - 1]: nums[i] = nums[i - 1] = 0 return sum(nums) == 0 nums = [8, 9, 9, 8, 5, 5] print(solve(nums))
입력
[8, 9, 9, 8, 5, 5]
출력
True