zoukankan      html  css  js  c++  java
  • POJ 1269

    中学的 又用上了。

     1 #include <iostream>
     2 #include <cstring>
     3 #include <cstdio>
     4 
     5 using namespace std;
     6 
     7 int x1,y1,x2,y2,x3,y3,x4,y4;
     8 double k1,k2,k3,d1,d2;
     9 double x,y;
    10 
    11 bool asure(){
    12     if(x1==x2||x3==x4){
    13         if(x1==x2&&x3==x4&&x1==x3)
    14         printf("LINE
    ");
    15         else if(x1==x2&&x3==x4&&x1!=x3)
    16         printf("NONE
    ");
    17         else{
    18             if(x1==x2){
    19                 k2=(y3-y4)*1.0/(x3-x4)*1.0;
    20                 d2=y3*1.0-k2*x3;
    21                 x=x1;
    22                 y=k2*x+d2;
    23             }
    24             else {
    25                 k1=(y1-y2)*1.0/(x1-x2)*1.0;
    26                 d1=y1*1.0-k1*x1;
    27                 x=x3;
    28                 y=k1*x+d1;
    29             }
    30             printf("POINT %0.2lf %0.2lf
    ",x,y);
    31         }
    32         return true;
    33     }
    34     return false;
    35 }
    36 
    37 
    38 int main(){
    39     int T;
    40     while(scanf("%d",&T)!=EOF){
    41         printf("INTERSECTING LINES OUTPUT
    ");
    42         while(T--){
    43             scanf("%d%d%d%d%d%d%d%d",&x1,&y1,&x2,&y2,&x3,&y3,&x4,&y4);
    44             if(asure()) continue;
    45             k1=(y1-y2)*1.0/(x1-x2)*1.0; k2=(y3-y4)*1.0/(x3-x4)*1.0;
    46             if(k1==k2){
    47                 k3=(y2-y3)*1.0/(x2-x3)*1.0;
    48                 if(k1==k3){
    49                     printf("LINE
    ");
    50                 }
    51                 else printf("NONE
    ");
    52                 continue;
    53             }
    54             else {
    55                 d1=y1*1.0-k1*x1;
    56                 d2=y3*1.0-k2*x3;
    57                 y=(k2*d1-k1*d2)/(k2-k1);
    58                 x=(y-d1)*1.0/k1;
    59                 printf("POINT %0.2lf %0.2lf
    ",x,y);
    60             }
    61         }
    62         printf("END OF OUTPUT
    ");
    63     }
    64     return 0;
    65 }
    View Code

  • 相关阅读:
    Python 集合
    Python 文字列
    JUNIT5(maven配置)
    Javascript严格模式
    移动互联测试
    Python的基础知识
    Linux系统下发件oa环境
    禅道的使用
    Linux系统的安装过程
    Oracle基础知识
  • 原文地址:https://www.cnblogs.com/jie-dcai/p/3866414.html
Copyright © 2011-2022 走看看