0x13 链表与邻接表
这东西我还是有点会玩的啊。。
邻值查找这东西不就是维护个前驱后继嘛。。
#include<cstdio>
#include<iostream>
#include<cstring>
#include<cstdlib>
#include<algorithm>
#include<cmath>
using namespace std; struct node
{
int x,id;
}a[];
bool cmp(node n1,node n2){return n1.x<n2.x;}
int p[];
int bef[],aft[];
int as[],pr[];
int main()
{
int n;
scanf("%d",&n);
for(int i=;i<=n;i++)
scanf("%d",&a[i].x), a[i].id=i;
sort(a+,a+n+,cmp); for(int i=;i<=n;i++)p[a[i].id]=i,bef[i]=i-,aft[i]=i+; for(int i=n;i>=;i--)
{
int t=p[i];as[i]=;
if(bef[t]!=)
{
int d=abs(a[t].x-a[bef[t]].x);
if(d<as[i])
as[i]=d, pr[i]=a[bef[t]].id;
}
if(aft[t]!=n+)
{
int d=abs(a[t].x-a[aft[t]].x);
if(d<as[i])
as[i]=d, pr[i]=a[aft[t]].id;
}
aft[bef[t]]=aft[t];
bef[aft[t]]=bef[t];
} for(int i=;i<=n;i++)printf("%d %d\n",as[i],pr[i]);
return ;
}
邻值查找
好的结果今天看一看下一题就是running median心态崩了,昨天才和苏大佬和林肯口胡了这题的链表做法。。。不做了。。。简直莫名其妙。。。
邻接表。。。还有人不会,吗。。。
0x13 链表与邻接表的更多相关文章
- 0x13链表与邻接表之邻值查找
题目链接:https://www.acwing.com/problem/content/138/ 参考链接:https://blog.csdn.net/sdz20172133/article/deta ...
- 邻接表有向图(三)之 Java详解
前面分别介绍了邻接表有向图的C和C++实现,本文通过Java实现邻接表有向图. 目录 1. 邻接表有向图的介绍 2. 邻接表有向图的代码说明 3. 邻接表有向图的完整源码 转载请注明出处:http:/ ...
- 邻接表有向图(二)之 C++详解
本章是通过C++实现邻接表有向图. 目录 1. 邻接表有向图的介绍 2. 邻接表有向图的代码说明 3. 邻接表有向图的完整源码 转载请注明出处:http://www.cnblogs.com/skywa ...
- 邻接表有向图(一)之 C语言详解
本章介绍邻接表有向图.在"图的理论基础"中已经对图进行了理论介绍,这里就不再对图的概念进行重复说明了.和以往一样,本文会先给出C语言的实现:后续再分别给出C++和Java版本的实现 ...
- 邻接表无向图(三)之 Java详解
前面分别介绍了邻接表无向图的C和C++实现,本文通过Java实现邻接表无向图. 目录 1. 邻接表无向图的介绍 2. 邻接表无向图的代码说明 3. 邻接表无向图的完整源码 转载请注明出处:http:/ ...
- 邻接表无向图(二)之 C++详解
本章是通过C++实现邻接表无向图. 目录 1. 邻接表无向图的介绍 2. 邻接表无向图的代码说明 3. 邻接表无向图的完整源码 转载请注明出处:http://www.cnblogs.com/skywa ...
- 邻接表无向图(一)之 C语言详解
本章介绍邻接表无向图.在"图的理论基础"中已经对图进行了理论介绍,这里就不再对图的概念进行重复说明了.和以往一样,本文会先给出C语言的实现:后续再分别给出C++和Java版本的实现 ...
- 数据结构 《2》----基于邻接表表示的图的实现 DFS(递归和非递归), BFS
图通常有两种表示方法: 邻接矩阵 和 邻接表 对于稀疏的图,邻接表表示能够极大地节省空间. 以下是图的数据结构的主要部分: struct Vertex{ ElementType element; // ...
- POJ 3308 Paratroopers(最小割EK(邻接表&矩阵))
Description It is year 2500 A.D. and there is a terrible war between the forces of the Earth and the ...
随机推荐
- IO编程 - 转载自廖雪峰的博文
IO在计算机中指Input/Output,也就是输入和输出.由于程序和运行时数据是在内存中驻留,由CPU这个超快的计算核心来执行,涉及到数据交换的地方,通常是磁盘.网络等,就需要IO接口. 比如你打开 ...
- BZOJ 1443 二分图博弈 网络流
思路: 二分图博弈嘛 找到最大匹配的必须点 跑个网络流 前后DFS一遍 //By SiriusRen #include <queue> #include <cstdio> #i ...
- MAVEN学习笔记之Maven插件的应用(4)
MAVEN学习笔记之Maven插件的应用(4) <build> <pluginManagement> <plugins> <plugin> <gr ...
- Android线性渐变
布局实现: 1. 在res中建立drawable文件夹. 2. 在drawable文件夹中建立shape.xml. 3. shape.xml的代码如下: <?xml version=" ...
- call by value 和 call by reference 的区别
引用自https://zhidao.baidu.com/question/340173099.html Call by Value就是传值的方式,函数调用时是把实参的值传给形参,函数调用结束后形参的值 ...
- hdu3938 Portal 离线的并查集
离线算法是将全部输入都读入,计算出所有的答案以后再输出的方法.主要是为避免重复计算.类似于计算斐波那契数列的时候用打表的方法. 题目:给一个无向图,求有多少个点对,使得两点间的路径上的花费小于L,这里 ...
- Android开发笔记(7)——Intent启用应用软件
转载请注明:http://www.cnblogs.com/igoslly/p/6844154.html Intent启用应用软件 intent可以用来要求其他应用组件完成特定工作,如相机.电话.地图等 ...
- PhotoZoom放大图片,真的能无损吗?
当然想要无损放大一张很小的图片时,总会有人会和你推荐PhotoZoom这款软件,那么它真的和说的一样,可以无损放大吗?下面小编挑了2张图片做了一下对比. 案例1,我们选取一张尺寸为200x200像素的 ...
- PhotoZoom控制面板简介说明
PhotoZoom是一款极其简单的图片无损放大工具,简单几步渲染出完美的放大照片,呈现无与伦比的画质效果.即可虽然简单,菜单和面板的功能很少,但却是设计师的必备神器,因为其简单易用性,它的软件菜单命令 ...
- 路飞学城Python-Day79
27-url控制器之path方法 由于基于re_path的路径编写方式是重复性高的编写url,如果规则改变了,则对应的要去修改很多url,这样是很不方便的 所以采用Django2.0的path去编写u ...