正方形

Time Limit: 1000 ms Memory Limit: 65536 KiB

Problem Description

给出四个点,判断这四个点能否构成一个正方形。

Input

输入的第一行包含一个整数T(T≤30)表示数据组数,每组数据只有一行,包括8个整数x1, y1, x2, y2,x3,y3,x4,y4(数据均在-1000,1000 之间)以逆时针顺序给出四个点的坐标。

Output

每组数据输出一行,如果是正方形,则输出: YES, 否则,输出:NO。

Sample Input

2

0 0 1 0 1 1 0 1

-1 0 0 -2 1 0 2 0

Sample Output

YES

NO

题解:根据正方形的判定公式,对角线相等且垂直,来判断是不是正方形。

import java.util.*;

public class Main {
public static void main(String[] agrs)
{
Scanner cin = new Scanner(System.in);
point a,b,c,d;
int t;
t = cin.nextInt();
while(t-->0)
{
a = new point();
b = new point();
c = new point();
d = new point();
a.x = cin.nextInt();
a.y = cin.nextInt();
b.x = cin.nextInt();
b.y = cin.nextInt();
c.x = cin.nextInt();
c.y = cin.nextInt();
d.x = cin.nextInt();
d.y = cin.nextInt();
if(judge(a,b,c,d)==1)
System.out.println("YES");
else
System.out.println("NO");
}
cin.close();
}
static int judge(point a,point b,point c,point d)
{
int x,y;
x = (a.x-c.x) * (a.x-c.x) + (a.y-c.y) * (a.y-c.y);
y = (b.x-d.x) * (b.x-d.x) + (b.y-d.y) * (b.y-d.y);
if(x==y&&((a.x-c.x) * (b.x-d.x)==-((a.y-c.y) * (b.y-d.y))))
return 1;
return 0;
}
} class point
{
int x,y;
}

Java练习 SDUT-2444_正方形的更多相关文章

  1. Java练习 SDUT - 2669_2-2 Time类的定义

    2-2 Time类的定义 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 通过本题目的练习可以掌握类与对象的定义: 设计 ...

  2. 第八次 Java 作业 重写正方形周长方法

    # 题目 编写一个应用程序,创建一个矩形类,类中具有长.宽两个成员变量和求周长的方法. 再创建一个矩形类的子类——正方形类,类中定义求面积方法.重写求周长的方法. 在主类中,输入一个正方形边长,创建正 ...

  3. Spark案例分析

    一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...

  4. Java 泛型快速排序 以sdut 1196为例

    oj链接:http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=1196 Java中,Arrays.so ...

  5. [转]JAVA 根据经纬度算出附近的正方形的四个角的经纬度

    csv文件转化为geojson文件中,涉及到路测图的打点生成,打点是由一个个正方形组成,而正方形是由四个点组成的,这四个点根据经纬度和范围生成,具体的实现代码是从网上找来的: /** * * @par ...

  6. Java实现 蓝桥杯 算法提高 套正方形(暴力)

    试题 算法提高 套正方形 问题描述 给定正方形边长width,如图按规律输出层层嵌套的正方形图形. 注意,为让选手方便观看,下图和样例输出均使用""代替空格,请选手输出的时候使用空 ...

  7. (Java实现) 洛谷 P1387 最大正方形

    题目描述 在一个n*m的只包含0和1的矩阵里找出一个不包含0的最大正方形,输出边长. 输入输出格式 输入格式: 输入文件第一行为两个整数n,m(1<=n,m<=100),接下来n行,每行m ...

  8. Java实现 蓝桥杯 算法提高 套正方形

    试题 算法提高 套正方形 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 给定正方形边长width,如图按规律输出层层嵌套的正方形图形. 注意,为让选手方便观看,下图和样例输出均使用 ...

  9. JAVA 根据经纬度算出附近的正方形的四个角的经纬度

    /** * * @param longitude 经度 * @param latitude 纬度 * @param distance 范围(米) * @return */ public static ...

随机推荐

  1. spring源码学习之springMVC(一)

    个人感觉<Spring技术内幕:深入解析Spring架构与设计原理(第2版)>这本书对spring的解读要优于<Spring源码深度解析(第2版)>这本书的,后者感觉就是再陈述 ...

  2. Django项目:CRM(客户关系管理系统)--51--42PerfectCRM实现AJAX全局账号注册

    #urls.py """PerfectCRM URL Configuration The `urlpatterns` list routes URLs to views. ...

  3. mac mamp host 配置

    <VirtualHost *:80> DocumentRoot "/Users/xuxu/www" ServerName localhost <Directory ...

  4. vue下使用nginx刷新页面404

    nginx 是一个代理的服务器.出现的问题:写好的页面通过nginx作为代理的服务器给别的同事看的时候发现了新写的页面打开就404,并且从其他页面跳转可以看到但是刷新页面就404.解决方法:在文件中的 ...

  5. mybatis深入理解(四)-----MyBatis的架构设计以及实例分析

    MyBatis是目前非常流行的ORM框架,它的功能很强大,然而其实现却比较简单.优雅.本文主要讲述MyBatis的架构设计思路,并且讨论MyBatis的几个核心部件,然后结合一个select查询实例, ...

  6. hibernate 查询最大值(数据条目数)

    如下 使用 SELECT COUNT(*) 然后获取最大值 Integer.parseInt(query.list().).toString()); 比如 StringBuffer hql1; hql ...

  7. JSP-http和tomcat

    一 Http 1.1 javaweb概述 1.2 http协议的概述 1.什么是Http协议 HTTP,超文本传输协议(HyperText Transfer Protocol)是互联网上应用最为广泛的 ...

  8. PHP获取真实客户端的真实IP的方法

    REMOTE_ADDR 是你的客户端跟你的服务器“握手”时候的IP.如果使用了“匿名代理”,REMOTE_ADDR将显示代理服务器的IP. HTTP_CLIENT_IP 是代理服务器发送的HTTP头. ...

  9. Hdu 4920矩阵乘法(内存访问的讲究)

    题目链接 Matrix multiplication Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 131072/131072 K ( ...

  10. Java开发中的Memcache原理及实现

    Memcached 客户端程序 Memcached的java客户端已经存在三种了: ?  官方提供的基于传统阻塞io由Greg Whalin维护的客户端 ?  Dustin Sallings实现的基于 ...