네 변의 목록이 있다고 가정하고 이 네 변이 직사각형을 형성하는지 여부를 확인해야 합니다.
따라서 입력이 변 =[10, 30, 30, 10]과 같으면 10과 30의 쌍이 있으므로 출력은 True가 됩니다.
이 문제를 해결하기 위해 다음 단계를 따릅니다. −
- 변의 값이 모두 같으면
- 참 반환
- 변[0]이 변[1]과 같고 변[2]가 변[3]과 같을 때
- 참 반환
- 변[0]이 변[3]과 같고 변[2]가 변[1]과 같을 때
- 참 반환
- 변[0]이 변[2]와 같고 변[3]이 변[1]과 같을 때
- 참 반환
- 거짓을 반환
예시
이해를 돕기 위해 다음 구현을 살펴보겠습니다. −
def solve(sides): if sides[0] == sides[1] == sides[2] == sides[3]: return True elif sides[0] == sides[1] and sides[2] == sides[3]: return True elif sides[0] == sides[3] and sides[2] == sides[1]: return True elif sides[0] == sides[2] and sides[3] == sides[1]: return True return False sides = [10, 30, 30, 10] print(solve(sides))
입력
[10, 30, 30, 10]
출력
True