判断点是否在一条直线上

Kuangyeyes Game

http://www.nowcoder.com/questionTerminal/da739672f98c436b9cfd56f5cf17b7c4

利用斜率可求得,每次判断三个点的两个斜率是否相等。
图片说明

#include<stdio.h>
#include<math.h>
int main()
{
    int m,n,i,j,t,x,y,a,b,c,d,f=0;
       scanf("%d %d %d",&n,&a,&b);
    scanf("%d %d",&c,&d);
    for(i=3;i<=n;i++){
        scanf("%d %d",&x,&y);
        if((y-b)*(c-a)!=(d-b)*(x-a)){
            printf("No");
            return 0;
        }
    }    
    printf("Yes");
    return 0;
}
全部评论
它的最后一句话说两个点可能是同一个,即第一个和第二个点为一样的时候,这种斜率求法不成立,还是我理解错误?如有错误请指正。
点赞 回复 分享
发布于 2020-01-12 18:00

相关推荐

陆续:不可思议 竟然没那就话 那就我来吧 :你是我在牛客见到的最美的女孩
点赞 评论 收藏
分享
程序员小白条:找的太晚,别人都是大三实习,然后大四秋招春招的,你大四下了才去实习,晚1年
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务