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

파이썬에서 도메인과 범위가 함수를 형성하는지 확인하는 프로그램

<시간/>

x가 도메인을 나타내고 데이터 y의 목록(y의 크기는 x의 크기와 같음)이 범위를 나타내는 데이터 목록이 있다고 가정합니다. x -> y가 함수인지 아닌지 확인해야 합니다. 여기에서는 x와 y의 모든 요소가 양수인 것으로 간주합니다.

따라서 입력이 x =[1,3,2,6,5] y =[1,9,4,36,25]와 같으면 출력은 True가 됩니다. 왜냐하면 각 x에 대해 해당 y는 여기에 제곱 값이 있으므로 이것이 함수입니다.

이 문제를 해결하기 위해 다음 단계를 따릅니다. −

여기에서는 간단한 단계 집합을 고려하고 있습니다. 이 문제는 복잡한 방법으로도 해결할 수 있습니다.

  • mp :=새 지도
  • 0에서 x 크기의 범위에 있는 i에 대해
    • a :=x[i]
    • b :=y[i]
    • a가 mp에 없으면
      • mp[a] :=b
    • 그렇지 않으면
      • 거짓을 반환
  • 참 반환

예시

이해를 돕기 위해 다음 구현을 살펴보겠습니다. −

def solve(x, y):
   mp = {}
   for i in range(len(x)):
      a = x[i]
      b = y[i]
      if a not in mp:
         mp[a] = b
      else:
         return False
   return True

x = [1,3,2,6,5]
y = [1,9,4,36,25]
print(solve(x, y))

입력

[1,3,2,6,5], [1,9,4,36,25]

출력

True