题目 1471:矩形面积交

蓝桥杯刷题群已成立,微信后台回复【蓝桥杯】,即可进入。

如果加入了之前的社群不需要重复加入。

时间限制: 1Sec 内存限制: 128MB

1. 题目描述

平面上有两个矩形,它们的边平行于直角坐标系的X轴或Y轴。对于每个矩形,我们给出它的一对相对顶点的坐标,请你编程算出两个矩形的交的面积。

2. 输入

输入仅包含两行,每行描述一个矩形。

在每行中,给出矩形的一对相对顶点的坐标,每个点的坐标都用两个绝对值不超过10^7的实数表示。

3. 输出

输出仅包含一个实数,为交的面积,保留到小数后两位。

4. 样例输入

1 1 3 3
2 2 4 4

5. 样例输出

1.00

6. 解决方案

思路:

  • 要对矩形做规范化处理。即左上角的坐标要小于右下角的坐标。
  • 根据不同情况分别确定相交矩形左右上下,四条边的xy坐标。
  • 根据坐标确定矩形的长与宽。
  • 求出矩形的面积。

Python语言

while True:try:a = list(map(float, input().strip().split()))b = list(map(float, input().strip().split()))# 对矩形做规范化处理a = [min(a[0], a[2]), min(a[1], a[3]), max(a[0], a[2]), max(a[1], a[3])]b = [min(b[0], b[2]), min(b[1], b[3]), max(b[0], b[2]), max(b[1], b[3])]# 确定每条边的坐标xl = max(a[0], b[0])xr = min(a[2], b[2])yup = max(a[1], b[1])ydown = min(a[3], b[3])# 确定矩阵的长与宽w = xr - xlh = ydown - yup# 求出矩形的面积if w > 0 and h > 0:print("%.2f" % (w * h))else:print("0.00")except:break

知识点:条件语句

1. if 语句

if expression:expr_true_suite
  • if 语句的 expr_true_suite 代码块只有当条件表达式 expression 结果为真时才执行,否则将继续执行紧跟在该代码块后面的语句。
  • 单个 if 语句中的 expression 条件表达式可以通过布尔操作符 andornot 实现多重条件判断。

【例子】

if 2 > 1 and not 2 > 3:print('Correct Judgement!')# Correct Judgement!

2. if - else 语句

if expression:expr_true_suite
else:expr_false_suite
  • Python 提供与 if 搭配使用的 else,如果 if 语句的条件表达式结果布尔值为假,那么程序将执行 else 语句后的代码。

【例子】

temp = input("猜一猜小姐姐想的是哪个数字?")
# input 函数将接收的任何数据类型都默认为 str。
guess = int(temp)
if guess == 666:print("你太了解小姐姐的心思了!")print("哼,猜对也没有奖励!")
else:print("猜错了,小姐姐现在心里想的是666!")
print("游戏结束,不玩儿啦!")

if语句支持嵌套,即在一个if语句中嵌入另一个if语句,从而构成不同层次的选择结构。

【例子】Python 使用缩进而不是大括号来标记代码块边界,因此要特别注意else的悬挂问题。

hi = 6
if hi > 2:if hi > 7:print('好棒!好棒!')
else:print('切~')# 无输出

【例子】

temp = input("猜一猜小姐姐想的是哪个数字?")
guess = int(temp)
if guess > 8:print("大了,大了")
else:if guess == 8:print("你太了解小姐姐的心思了!")print("哼,猜对也没有奖励!")else:print("小了,小了")
print("游戏结束,不玩儿啦!")

3. if - elif - else 语句

if expression1:expr1_true_suite
elif expression2:expr2_true_suite..
elif expressionN:exprN_true_suite
else:expr_false_suite
  • elif 语句即为 else if,用来检查多个表达式是否为真,并在为真时执行特定代码块中的代码。

【例子】

temp = input('请输入成绩:')
source = int(temp)
if 100 >= source >= 90:print('A')
elif 90 > source >= 80:print('B')
elif 80 > source >= 60:print('C')
elif 60 > source >= 0:print('D')
else:print('输入错误!')

4. assert 关键词

assert这个关键词我们称之为“断言”,当这个关键词后边的条件为 False 时,程序自动崩溃并抛出AssertionError的异常。

【例子】

my_list = ['lsgogroup']
my_list.pop(0)
assert len(my_list) > 0# AssertionError

【例子】在进行单元测试时,可以用来在程序中置入检查点,只有条件为 True 才能让程序正常工作。

assert 3 > 7# AssertionError

题目 1471:【蓝桥杯】【入门题】【基础练习VIP】矩形面积交相关推荐

  1. 3、计算圆形面积(蓝桥杯入门题)

    问题描述 给定圆的半径r,求圆的面积. 输入格式 输入包含一个整数r,表示圆的半径. 输出格式 输出一行,包含一个实数,四舍五入保留小数点后7位,表示圆的面积. 思路:直接利用圆的面积公式s=pirr ...

  2. 【蓝桥杯官网试题 - 基础练习】 矩形面积交 (几何)

    题干: 问题描述 平面上有两个矩形,它们的边平行于直角坐标系的X轴或Y轴.对于每个矩形,我们给出它的一对相对顶点的坐标,请你编程算出两个矩形的交的面积. 输入格式 输入仅包含两行,每行描述一个矩形. ...

  3. 题目 1878: 蓝桥杯2017年第八届真题-青蛙跳杯子

    题目 X星球的流行宠物是青蛙,一般有两种颜色:白色和黑色. X星球的居民喜欢把它们放在一排茶杯里,这样可以观察它们跳来跳去. 如下图,有一排杯子,左边的一个是空着的,右边的杯子,每个里边有一只青蛙. ...

  4. 题目 2311: 蓝桥杯2019年第十届省赛真题-Fibonacci 数列与黄金分割

    题目 Fibonacci 数列是非常著名的数列: F[1] = 1,F[2] = 1, 对于 i > 3,F[i] = F[i − 1] + F[i − 2] Fibonacci 数列有一个特殊 ...

  5. 蓝桥杯练习系统 基础练习 全部习题 题目及AC代码(包括VIP试题)C++

    蓝桥杯练习系统 基础练习 全部习题ac代码 看在作者这么肝的份上点个赞吧

  6. # 2014年蓝桥杯真题CC++B组

    2014年蓝桥杯真题C/C++B组 1.啤酒和饮料 题目描述 啤酒每罐2.3元,饮料每罐1.9元,小明买了若干啤酒和饮料,一共花了82.3元. 我们还知道她买的啤酒比饮料的数量多,请你计算他买了几罐啤 ...

  7. 蓝桥杯python省赛冲刺篇2——常用算法的详细解析及对应蓝桥杯真题:打表模拟法、递推递归法、枚举法、贪心算法、差分与前缀和

    注意:加了题目链接 目录 注意:加了题目链接 一.打表模拟法 介绍 1. 算式问题 题目描述 解析与代码演示 2. 求值 题目描述 解析与代码演示 3. 既约分数 题目描述 解析与代码演示 4. 天干 ...

  8. 第十届蓝桥杯c语言试题,第十届蓝桥杯真题编程题1-7解析(高级组).pdf

    scratch 少儿编程第十届蓝桥杯真题 7 大家好 ~今天我们来讲解 scratch 蓝桥杯第十届编程大题的第七道题. 同样,这道题也是非常有难度的一道题.一起来看一下吧 解析: 女孩的程序 1.在 ...

  9. python解答蓝桥杯真题2 猜年龄 美国数学家维纳(N.Wiener)智力早熟,11岁就上了大学。他曾在19351936年应邀来中国清华大学讲学。。。

    python解答蓝桥杯真题2 猜年龄 美国数学家维纳(N.Wiener)智力早熟,11岁就上了大学.他曾在1935~1936年应邀来中国清华大学讲学... 问题描述 全排列模板: 美国数学家维纳(N. ...

最新文章

  1. 重庆大学转专业2019计算机,关于开展2018年本科学生转专业的通知
  2. python怎么安装matplotlib-在python3.7下怎么安装matplotlib
  3. linux的自定义input,linux键值到Android键值的转换与自定义
  4. python中文界面设定_python绘图界面中文显示
  5. 前端:HTML/02/排版标记,块元素,行内元素,html字符实体,列表标记,图片标记
  6. Spring Boot 中文索引--资料大全
  7. GCD API记录(二)
  8. Q112:用Xcode调试程序(以PBRT-V3中的pbrt为例)
  9. 慢速DoS攻击工具slowhttptest(网站压力测试工具)
  10. Behavior Designer 行为树中文版教程
  11. 【计算机毕业设计】小型OA系统设计与实现Springboot
  12. 轻仓的贵金属白银今日走势分析
  13. pgAdmin4 设置 中文 界面
  14. 卡数字怀念的东西:魔方
  15. HDU 4685. Prince and Princess
  16. 高级项目管理-4、项目范围、进度、成本、质量管理
  17. 徐荣谦《养好脾和肺 宝宝不积食不咳嗽长大个》【02】食物健脾
  18. 如何配置一个极简舒适的终端环境:oh-my-zsh 和iterms配置
  19. 关于论青少年尽早学少儿编程之说
  20. 升余弦滤波器MATLAB分析

热门文章

  1. Python中的类、模块和包究竟是什么?
  2. 零基础java培训如何规划学习路线
  3. java实现redis缓存_java实现redis缓存功能
  4. 什么是新IP的四层网络技术
  5. tomcat_deploy 平滑启动脚本
  6. oracle 9i 安装及连接远程数据库
  7. Centos运行级别和开机过程
  8. 基于Virtual DOM与Diff DOM的测试代码生成
  9. Linux之文件权限管理
  10. 使用apache的activemq集合JMS处理异步消息