Lv0 프로그래머스(Programmers)[Python][파이썬] 겹치는 선분의 길이

"""
출처: 프로그래머스 코딩 테스트 연습,
https://school.programmers.co.kr/learn/courses/30/lessons/120876
"""

#풀이 과정
#점 개념 선 개념 정확히 생각 후 풀기! 핵심 생각
def solution(lines):
result = 0
num = []
for a, b in lines:
num.append(range(a, b + 1))
a = set(num[0])
b = set(num[1])
c = set(num[2])
x = a & b
print("x", x)
if not len(x) == 0:
result += len(x) - 1
print("1", result)
y = (b & c) # - (a & b & c)
print("y", y)
if not len(y) == 0:
result += len(y) - 1
print("2", result)
z = (a & c) # - (a & b & c)
print("z", z)
if not len(z) == 0:
result += len(z) - 1
print(result)
if not len(a & b & c) == 0:
result -= 2 * (len(a & b & c) - 1)
return result

else:
return result