题目
用下面的数据类型表示线:
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();