思考题:相交的几何图形

给定不超过 26
个几何图形,每个图形都有一个唯一大写字母作为其编号。

每个图形在平面中的具体位置已知,请你判断,对于每个图形,有多少个其他图形与其存在交点。

在判断交点时,只考虑边与边相交的情况,如果一个图形完全包含于另一个图形内部,则不视作相交。
在这里插入图片描述
输入描述:
输入包含多组测试数据。

每组数据若干行,每行描述一个图形,首先一个大写字母,表示其编号,然后一个字符串,表示其图形类别,最后若干个该图形的顶点坐标,这些输入信息都用单个空格隔开。

所有可能出现的图形类别如下:

square(正方形):如果图形是正方形,则会给出其一对对角顶点的坐标。
rectangle(矩形):如果图形是矩形,则会给出其三个顶点的坐标,保证以第一个顶点和第二个顶点为端点的线段与以第二个顶点和第三个顶点为端点的线段可以构成一个直角。
line(线段):如果图形是线段,则会给出其两个端点的坐标(保证两端点不相同)。
triangle(三角形):如果图形是三角形,则会给出其三个顶点的坐标,保证三顶点不共线。
polygon(多边形):如果图形是多边形,则首先给出一个 N,表示其顶点数量,然后以顺时针或逆时针的顺序给出其 N 个顶点的坐标,保证多边形不会与自身相交,并且所有边的长度都不为 0。
输出格式:
对于每组数据,其中的每个图形都要输出一行结果,输出时按照图形字母编号的字典顺序依次输出各个图形。

对于图形 X,输出格式必须是下列之一:

X has no intersections,如果图形 X
不与任何其他图形相交。
X intersects with A,如果图形 X 只和图形 A 相交。
X intersects with A and B,如果图形 X 只和两个图形 A,B 相交,注意按字典顺序输出相交图形编号。
X intersects with A, B, . . ., and Z,如果图形 X 与超过 2 个图形相交,注意除了最后一个图形编号外,其余图形编号后面都要跟 ,,按字典顺序输出相交图形编号。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/34477.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AIGC+艺术=教育变革?

在数字化时代的浪潮中,技术的每一次跃进都深刻影响着社会的各个领域,教育亦不例外。近年来,人工智能生成内容(AIGC)技术的兴起,为艺术教育领域带来了前所未有的变革机遇。当AIGC与艺术相结合,我…

vscode 删除不用的ssh远程连接

使用vscode连接一个远程服务器发现联不通,但是使用mobaxterm是可以通的,最后原因发现是这个服务器ip与之前连过的另一台相同,和之前连接保存的信息冲突了 解决办法: 使用记事本打开这个路径下的known_hosts(最好备份一下)&#x…

电脑打印文件怎么操作?

有打印机用户的打印操作 对于已经拥有打印机的用户来说,打印文件通常是一个简单的步骤。首先,你需要将你的文件(如Word、PDF、PPT等)在电脑上打开。然后,点击菜单栏中的“打印”选项,或者快捷键CtrlP&…

CRMEB-PHP多商户版安装系统配置清单

系统在安装完成之后,需要对系统进行一系列的配置,才能正常使用全部的功能,以下是官方整理的配置清单 平台后台 商户后台

实例080 进度条百分比显示

本文仅供学习交流,严禁用于商业用途,如本文涉及侵权请及时联系本人将于及时删除 目录 1.实例说明 2.技术要点 3.实现过程 4.实例结果 5.示例拓展 2.10 进度条控件典型实例进度条控件(Progress)用于显示程序的进度&#xff0c…

NetSuite 文件夹 Group Restriction的探究

同一个角色,为什么相同的文件,有的用户可以看,而有的用户不能看呢?这其中与一个隐藏功能相关,即文件夹的Restriction相关,其中一个非常典型的点是Group Restriction(组限制)&#xf…

Web渗透:XXE-XML外部实体漏洞

XML External Entity (XXE) 漏洞是一种注入攻击,利用不安全的XML解析器来执行各种恶意操作,如读取本地文件、执行远程代码、发起拒绝服务攻击等;此漏洞的根本原因在于XML标准允许在文档中定义外部实体,并在解析时进行解析和替换。…

Navicat连接服务器MySQL

Navicat连接服务器MySQL 1. Navicat连接服务器MySQL2. 如何查看MySQL用户名和密码3. 修改MySQL登录密码4. 安装MySQL(Centos7)遇到错误和问题1. error 1045 (28000): access denied for user rootlocalhost (using password:yes) 1. Navicat连接服务器MySQL 选择数据库 直接使用…

jar包转exe封装软件并一键安装使用

目录 封装文档说明如有跨域问题在ems服务增加配置服务启动自动打开浏览器使用工具 Launch4j 把jar包打成exe执行文件现在还不能给用户用,因为缺少jre,后面整合资源会把jre一起打包使用inno setup合并资源,mysql之类的服务,最终打包…

【系统架构设计师】四、嵌入式基础知识(软件|软件设计|硬件|式总线逻辑)

目录 一、嵌入式软件 1.1 嵌入式软件分类 1.2 板级支持包(BSP) 1.3 BootLoader 1.4 设备驱动程序 二、嵌入式软件设计 2.1 编码 2.2 交叉编译 2.3 交叉调试 三、嵌入式系统硬件的分类 3.1 根据用途分类 3.2 存储器分类 四、内(外)总线逻辑 …

uni-app系列:uni.navigateTo传值跳转

文章目录 1. 使用URL参数2. 使用页面栈注意事项:uni.navigateTo API 参数详细说明回调函数参数 在uni-app中,如果想要通过uni.navigateTo方法跳转到另一个页面并传递参数,可以使用页面路由的URL参数或者页面栈的方式来传递。但是,…

分享一个解决 EF 性能低的思路,通过 Python 访问心跳侦测 API 保持 EF 在线

前言 .NET FrameWork EF(Entity Framework)是一个很优秀的 ORM 框架,对于提高工作效率很有帮助,但由于底层原因,在程序启动时,EF 需要初始化和加载模型及其对应的数据库元数据等等,涉及到数据库…

20240507-招商证券 基于鳄鱼线的指数择时及轮动策略

动量震荡指标构造 动量震荡指标为交易者提供了获利的钥匙。动量震荡指标测算了5根价格柱相对于34根价格柱的动量变化。首先计算最近5根价格柱的最高价和最低价间的中点的简单移动平均值,即(最高价最低价)12的简单移动平均,将得出的值减去最近34根价格柱…

Cephalo:专门用于仿生设计的多模态视觉大型语言模型

实时了解业内动态,论文是最好的桥梁,专栏精选论文重点解读热点论文,围绕着行业实践和工程量产。若在某个环节出现卡点,可以回到大模型必备腔调或者LLM背后的基础模型重新阅读。而最新科技(Mamba,xLSTM,KAN)…

审美进阶:7个小程序模板,助你提高设计感!

小程序是一种无需下载和安装即可使用的应用程序。小程序实现了应用程序“触手可及”的梦想。用户可以通过扫描或搜索打开应用程序。对于开发者来说,小程序也大大降低了开发成本。因此,越来越多的品牌争相制作小程序应用程序。本文将为您带来优秀的微信小…

ubuntu安装qtcreator与环境配置

sudo apt-get update sudo apt-get install gcc g # 两个编译器 sudo apt-get install build-essential # 编译c/c所需要的软件包 sudo apt-get install libgl1-mesa-dev # 安装mesa,Mesa 实际上是一个库,它实现了多种图形 API 规范 sudo apt-get insta…

MFC结构体定义中使用CString类型

MFC的结构体定义中字符串可以使用CString类型; struct MyStruct {int x;int y;CString str; }; ...... void CTttView::OnDraw(CDC* pDC) {CTttDoc* pDoc GetDocument();ASSERT_VALID(pDoc);// TODO: add draw code for native data hereCString str1;MyStruct m_…

vue配置中的process.env

项目中的.env开头的文件是否知道是干什么的呢 主要是为了区分测试环境还是生产环境env.development为测试环境 # 测试环境 NODE_ENV development VUE_APP_BASE_API http://xxxxxxxxx // 命名一定要以 VUE_APP_ 开头,要不然根本取不到 .env.production为生产环境…

C++ 内存分配可视化

GitHub - archibate/mallocvis: allocation visualization in svg graph 正常连续内存分配 #include <vector>int main() {// 堆mallocstd::vector<int> memory;for (int i 0; i < 1000; i) {memory.emplace_back(i*10);}return 0; } 主动内存分配释放 #in…

微信小程序简易录音机

首先先创建一个项目&#xff08;想必大家都会啦那就直接开干&#xff09; 首先上html结构 <view class"wx-container"><view id"title">录音机</view><view id"time">{{hours}}:{{minute}}:{{second}}</view>&l…