Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

두 숫자 집합의 값 인수 인수를 찾는 프로그램

<시간/>

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이 아니면
        • 플래그 :=거짓
        • 루프에서 나오다
    • 플래그가 참이면
      • nums2의 각 k에 대해
        • k mod i가 0이 아니면
          • 플래그 :=거짓
          • 루프에서 나오다
    • 플래그가 참이면
      • 카운트 :=카운트 + 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