題目
用下面的數據類型表示線:
struct POINT { //點
int x, y; //坐標值x和y
} ;
struct LINE { //線
POINT s, e; //線的兩端
} ;
輸入2個線段的端點的坐標值x和y,判斷兩條線段所在直線是否為平行線。如果兩線段共線,判為不平行。
輸入格式
輸入格式
輸入整型,空格分隔。按照先起點(x,y)再終點(x,y)的次序。每行一個線段的信息。注意:考慮斜率不存在的情況
輸出格式
輸出YES或者NO
樣例1
輸入:
-20 20 20 -10
0 0 5 0輸出:
NO
樣例2
輸入:
-20 20 -20 10
0 0 0 5輸出:
YES
程序
def judge1(x1,x2,m1,m2):if x1 ==x2 and m1 ==m2 and x1!=m1:return Trueelse:return False
def main():#code herex1,y1,x2,y2 = map(int,input().split())m1,n1,m2,n2 = map(int,input().split())k1=k2=b1=b2=0flag = False# 斜率存在的情況下if x1!=x2 and m1 != m2:k1 = (y2-y1)/(x2-x1)b1 = y2-k1*x2k2 = (n2-n1)/(m2-m1)b2 = n2-k2*m2if k1 == k2 and b1!=b2 :flag = True# else:# judge1(x1,x2,m1,m2)if flag or judge1(x1,x2,m1,m2):print("YES")else:print("NO")passif __name__ == '__main__':main();