问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

求一算法 ,是关于数组的问题

发布网友 发布时间:2022-04-24 20:53

我来回答

1个回答

热心网友 时间:2023-10-10 20:04

1、将所有黑点坐标值离散化。
2、将黑点数据处理为两份:
A、将同列的点连成小线段,即同列中相邻的点连成线段,线段除两个端点外中间不存在黑点,线段可用C(y1,y2,x)表示,其中y1<y2,并按y1值排序。
B、将同行的点连成大线段,即只需将同行中两个最远点相连,其余点均包含在该线段中,线段可用R(x1,x2,y)表示,其中x1<x2,并按y值排序。
3、按y值从小到大逐一处理行大线段,过程中需要两个数据结构:
树状数组ta:ta[x]表示与当前行线段所在直线相交并且两端点不在直线上的列线段数量。
优先队列qu:队列中存放列线段,以y2值小为优先。
另需记录满足条件的白点数的变量cnt,然后,对于每条行线段具体处理步骤:
1)将待处理的列线段中所有满足Cj.y1<Ri.y的列线段入队qu,并且ta[Cj.x]加1。
2)将qu中所有满足Ck.y2<=Ri.y的列线段从qu出队,并且ta[Ck.x]减1。
3)cnt+=树状数组ta中Ri.x1+1到Ri.x2-1的和,即与当前行线段相交的列线段数。
4、处理完所有行线段后cnt即答案。
优先队列的出队和入队都是O(logn),树状数组的数组元素加减和数组求和也都是O(logn),具体原理这里就不说了。虽然在处理每条行线段时可能会进行多次列线段的出入队操作,但从全局来看,每条列线段仅会出入队列各一次。
这是我的思路,没有经过代码实践,有问题可再讨论^_^。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
Linux系统安装FTP服务器 Linux系统的网络文件共享 建筑的七盏明灯的内容简介 面向对象设计七大原则 简单说 交互设计七大定律 交互设计的“根”——七大定律 交互设计原则和理论2——七大定律 七大设计原则 附近的加油站有哪些 附近的加油站有哪些地方 代表树状数组的数组是什么意思 说的通俗易懂一点 tree 树状数组的基本概念 nba篮筐高度是多高? 标准的篮球高度多少? 篮球标准篮筐高度是多少? 篮球的标准尺寸是多少? CBA/NBA/国际篮联的篮球圈的标准高度分别是多少? 加盟做麻花有什么样的市场? 什么叫特稿 申赋渔的人物经历 红沙糖可作肥料用吗? 新闻写作中特稿与特写的区别 有什么红糖制零食 请问:报刊杂志专稿、特稿的投稿信箱? 无极麻花培训,我想学做无极麻花 新闻新兴文体包括哪些? 老手艺做麻团的片段 新闻特稿写作的具体要求是什么?有哪些限制性因素?求解答,谢谢 外层焦脆好吃的红糖麻酱花卷,在家只用烤箱能做出来吗? 纪实文学写作方法与模式、技巧 树状数组解决最长不下降子序列 讲讲主要思路就好 树状数组如何修改区间的值 树状数组的树状数组的充分性 神犇求解…树状数组能求区间最值吗?时间复杂度是多少啊?…还有就是树状... 如何利用树状数组修改一个区间? 线段树的解决实际问题 高级数据结构的目录 c 语言知识清单? C语言,哪位好心的大哥,姐姐:能告述我位运算吗?我看不懂啊! NOI比noip多考些什么 惠普e72530如何设置扫描 word2007中水印背景图片如何修改? 在word文档中,通过水印添加背景,背景图片会变淡, 请问有什么方法可以解决这个问题? 让水印清晰。。。 如何设置word背景图片的透明度和大小 photoshop怎样制作一张水印图案的背景图。例如以下这张图片背的景样 在中公学完Java之后,一般能拿多少薪资呢? 配眼镜视频:带女儿去医院配眼镜,这个画面你是不是很熟悉 在培训学校学完Java工资能拿多少? 最近在抖音上看到很多关于领军眼镜的视频,他们配眼镜专业不? 参加JAVA培训之后工资大概多少