nums1과 nums2라는 두 개의 배열이 있다고 가정합니다. 다음 조건을 만족하는 값의 수를 찾아야 합니다. -
-
nums1의 요소는 선택되는 요소의 요소입니다.
-
선택된 요소는 nums2의 모든 요소의 인수입니다.
따라서 입력이 nums1 =[3,9] nums2 =[27, 81]과 같으면 숫자가 9와 27이므로 출력은 2가 됩니다.
-
9 모드 3 =0
-
9 모드 9 =0
-
27 모드 9 =0
-
81 모드 9 =0
-
27 모드 3 =0
-
27 모드 9 =0
-
27 모드 27 =0
-
81 모드 27 =0.
이 문제를 해결하기 위해 다음 단계를 따릅니다. −
- 카운트:=0
- 1에서 100 사이의 i에 대해 다음을 수행합니다.
- 플래그 :=참
- nums1의 각 j에 대해
- i mod j가 0이 아니면
- 플래그 :=거짓
- 루프에서 나오다
- i mod j가 0이 아니면
- 플래그가 참이면
- nums2의 각 k에 대해
- k mod i가 0이 아니면
- 플래그 :=거짓
- 루프에서 나오다
- k mod i가 0이 아니면
- nums2의 각 k에 대해
- 플래그가 참이면
- 카운트 :=카운트 + 1
- 반환 횟수
예시
더 나은 이해를 위해 다음 구현을 살펴보겠습니다.
def solve(nums1, nums2): count = 0 for i in range(1,101): flag = True for j in nums1: if i%j != 0: flag = False break if flag: for k in nums2: if k%i!=0: flag = False break if flag: count+=1 return count nums1 = [3,9] nums2 = [27, 81] print(solve(nums1, nums2))
입력
[3,9], [27, 81]
출력
1