배열 번호가 있다고 가정합니다. 우리는 또한 또 다른 쌍(x, y)이 있습니다. find(x,y) 값이 홀수인지 짝수인지 찾아야 합니다. find()는 다음과 같습니다.
- find(x, y) =1 if x> y
- find(x, y) =nums[x]^find(x+1, y) 그렇지 않으면
따라서 입력이 nums =[3,2,7] (x, y) =1, 2와 같으면 출력은 짝수가 됩니다. 왜냐하면 -
- 찾기(1, 2) =숫자[1]^찾기(2,3)
- 찾기(2, 2) =숫자[2]^찾기(3,2)
- 찾기(3, 2) =1,
- find(2, 2) =7, find(1, 2) =2^7 =128이므로 짝수입니다.
이 문제를 해결하기 위해 다음 단계를 따릅니다. −
- 짝수 :=사실
- x> y 또는 nums[x]가 홀수이면
- 짝수 :=거짓
- x <숫자 크기 - 1이고 x
- 짝수 :=거짓
- '짝수' 반환
- '홀수' 반환
예시
이해를 돕기 위해 다음 구현을 살펴보겠습니다. −
def solve(nums, x, y): even = True if x > y or (nums[x] % 2 == 1): even = False if x < len(nums) - 1 and x < y and nums[x+1] == 0: even = False if even: return 'Even' else: return 'Odd' nums = [3,2,7] (x, y) = 1,2 print(solve(nums, x, y))
입력
[3,2,7], 1, 2
출력
Even