import java.util.Scanner;

 public class Solution
 {
     public static void main(String[] args)
     {
         Scanner input = new Scanner(System.in);

         System.out.print("Enter r1's center x-, y-coordinates, width, and height: ");
         double x1 = input.nextDouble();
         double y1 = input.nextDouble();
         double width1 = input.nextDouble();
         double height1 = input.nextDouble();

         System.out.print("Enter r2's center x-, y-coordinates, width, and height: ");
         double x2 = input.nextDouble();
         double y2 = input.nextDouble();
         double width2 = input.nextDouble();
         double height2 = input.nextDouble();

         input.close();

         boolean isInside = false;

         if((x1 - width1 / 2 >= x2 - width2 / 2) && (x1 + width1 / 2 <= x2 + width2 / 2) &&
             (y1 - height1 / 2 >= y2 - height2 / 2) && (y1 + height1 / 2 <= y2 + height2 / 2))
         {
             System.out.println("r1 is inside r2");
             isInside = true;
         }
         else if((x2 - width2 / 2 >= x1 - width1 / 2) && (x2 + width2 / 2 <= x1 + width1 / 2) &&
             (y2 - height2 / 2 >= y1 - height1 / 2) && (y2 + height2 / 2 <= y1 + height1 / 2))
         {
             System.out.println("r2 is inside r1");
             isInside = true;
         }

         if(!isInside)
         {
             if(x1 >= x2)
             {
                 if(y1 >= y2)
                 {
                     if((x1 - width1 / 2 >= x2 + width2 / 2) && (y1 - width1 / 2 >= y2 + width2 / 2))
                         System.out.println("r2 does not overlap r1");
                     else
                         System.out.println("r2 overlaps r1");
                 }
                 else
                 {
                     if((x1 - width1 / 2 >= x2 + width2 / 2) && (y1 + width1 / 2 <= y2 - width2 / 2))
                         System.out.println("r2 does not overlap r1");
                     else
                         System.out.println("r2 overlaps r1");
                 }
             }
             else
             {
                 if(y1 >= y2)
                 {
                     if((x1 + width1 / 2 <= x2 - width2 / 2) && (y1 - width1 / 2 >= y2 + width2 / 2))
                         System.out.println("r2 does not overlap r1");
                     else
                         System.out.println("r2 overlaps r1");
                 }
                 else
                 {
                     if((x1 + width1 / 2 <= x2 - width2 / 2) && (y1 + width1 / 2 <= y2 - width2 / 2))
                         System.out.println("r2 does not overlap r1");
                     else
                         System.out.println("r2 overlaps r1");
                 }
             }
         }
     }
 }

HW3.28的更多相关文章

  1. 28个你必须知道的HTML5的新特性,技巧以及技术

    崭新新的页面布局 传统的: HTML5: 1. 新的Doctype 尽管使用<!DOCTYPE html>,即使浏览器不懂这句话也会按照标准模式去渲染 2. Figure元素 用<f ...

  2. CSharpGL(28)得到高精度可定制字形贴图的极简方法

    CSharpGL(28)得到高精度可定制字形贴图的极简方法 回顾 以前我用SharpFont实现了解析TTF文件从而获取字形贴图的功能,并最终实现了用OpenGL渲染文字. 使用SharpFont,美 ...

  3. 来,一起让我们越来越懒,面向CSS、JS未来编程。(9.28已更新)

    2016.10.29更新 本文存在大量的错误,仅供参考. 不知不觉在前端领域马上一个年头就要过去了,然而再看看自己的代码,果然够烂,那么为什么代码一直没有用面向对象的思维去写CSS呢?首先有两点:一点 ...

  4. MySQL报错:Got error 28 from storage engine

    今天碰到数据库出错: Got error 28 from storage engine 查了一下,数据库文件所在的盘应该没事,应该是数据库用的临时目录空间不够 问题原因: 磁盘临时空间不够导致. 解决 ...

  5. [.net 面向对象程序设计进阶] (28) 结束语——告别2015

    [.net 面向对象程序设计进阶] (28) 结束语——告别2015 <.net面向对象程序设计进阶>这一系列文章写了太长的时间了,大概有半年没写,在年底又一口气写了好几篇.在整个过程中目 ...

  6. 背水一战 Windows 10 (28) - 控件(文本类): TextBox, PasswordBox

    [源码下载] 背水一战 Windows 10 (28) - 控件(文本类): TextBox, PasswordBox 作者:webabcd 介绍背水一战 Windows 10 之 控件(文本类) T ...

  7. 10月28日PHP基础知识测试题

    本试题共40道选择题,10道判断题,考试时间1个半小时 一:选择题(单项选择,每题2分): 1. LAMP具体结构不包含下面哪种(A) A:Windows系统 B:Apache服务器 C:MySQL数 ...

  8. CentOS6.3编译安装Nginx1.4.7 + MySQL5.5.25a + PHP5.3.28

    [准备工作] #在编译安装lnmp之前,首先先卸载已存在的rpm包. rpm -e httpd rpm -e mysql rpm -e php yum -y remove httpd yum -y r ...

  9. 记 Mac Pro 系统升级后,编译安装 PHP-5.6.28 / PHP-7.0 报错修复过程

    买 Mac Pro 的时候,系统为 OS X 10.11.5,编译 PHP-5.6.21 的时候,也遇到一些坑,安装过程记录如下: Mac Pro 编译安装 PHP 5.6.21 及 问题汇总 后来, ...

随机推荐

  1. 对于python WSGI的理解

    首先看看WSGI的目的是什么? 是用来定义一个统一的接口. 这个接口是针对Web服务器和python Web应用之间的. 以增加Python web应用在不同Web 服务器之间的可移植性. 也就是说如 ...

  2. 解决关于IIS10.0下无法安装 URL 重写模块 2的问题

    win10 系统自带的IIS是IIS10.0,官网提示URL Rewrite 2.0是只要IIS7.0以上的版本就可以安装,但是在IIS10.0下安装却一直失败.错误提示如下: 那么如何才能正确安装呢 ...

  3. Oracle目录结构及创建新数据库

    oracle目录结构 当需要创建新的数据仓库时我可以用 Database Configuration Assistant(数据库配置助手) admin 存放创建的不同数据库 cfgtoollogs c ...

  4. 基于Mahout的电影推荐系统

    基于Mahout的电影推荐系统 1.Mahout 简介 Apache Mahout 是 Apache Software Foundation(ASF) 旗下的一个开源项目,提供一些可扩展的机器学习领域 ...

  5. 图片生成操作属性导致WP内存溢出解决办法

    在开发的项目中,发现经常会出现异常 “内存溢出,不能再继续执行程序”,通过搜索一些国外的文章,发现原来是由于项目中的图片比较多,而生存操作设为了“内容”.通过设置图片的生成操作为“无”,复制操作为“如 ...

  6. Python编程规范及性能优化(转载)

    转载地址:http://codeweblog.com/python编程规范及性能优化/

  7. Linux中crond服务与crontab用法

    需要写个在Linux下定时更新系统的脚本,man crondtab 不甚详细,现将网络上的介绍列举如下: crontab是一个很方便的在unix/linux系统上定时(循环)执行某个任务的程序使用cr ...

  8. MySql排序性能对比

  9. CSS使块半透明方法,兼容IE6

    前言 今天LOL玩机器人玩得真心不爽,实在崩溃,还是逛博客园比较爽些,记录自己的成长!说句实话我在编程方面确实是个菜鸟,菜到一种超神的地步,没一样自己特擅长的,悲催...... 废话少说,进入正题,H ...

  10. UVA 11090 Going in Cycle!!

    要求给定的图的中平均权值最小的环,注意处理自环的情况就能过了. 按照w1+w2+w3+….wn < n*ave的不等式,也就是(w1-ave) + (w2-ave) +…..(wn-ave) & ...