题解 1456: 蓝桥杯历届试题-连号区间数

来看看其他人写的题解吧!要先自己动手做才会有提高哦! 
返回题目 | 我来写题解

筛选

蓝桥杯历届试题-连号区间数

摘要:暴力思路:    首先这个题需要理解这个连续性是什么,比如给你一个数组:1 3 5 4 2,然后我在里面随便去一段(取3 5 4)然后我把它排序(从小到大)发现也是3,4,5        那   就……

最简单枚举(c++)

##解释:3241符合条件吧,最大值为4,最小值为1,4-1=3(总共的数-1)354再来一个:最大值为5,最小值未3,5-3=2(总共的数-1)##代码:```cpp#includeusingnamespacestd;constintN=10000+10;intarr[N];intn,

蓝桥杯历届试题-连号区间数-题解(C++代码)by Zfans

```cpp/*标题:连号区间数小明这些天一直在思考这样一个奇怪而有趣的问题:在1~N的某个全排列中有多少个连号区间呢?这里所说的连号区间的定义是:如果区间[L,R]里的所有元素(即此排列的第L个到第R个元素)递增排序后能得到一个长度为R-L+1的“连续”数列,则称这个区间连号区间。

蓝桥杯历届试题-连号区间数-题解(耗时较少)(C++代码)

解题思路:其实题目很简单,外层的双重遍历是肯定少不了的,问题就是你在遍历之后进行判断的方法:错误示范:用sort排序,这样耗时太长,会超时。其实对于这道题目因为他的数是连续的,所以比较简单,我们可以利用这一点:只要我们做到:最大值-最小值+1=i-j+1(即你要判断的区间长度)(1)耗时较多的:用ma