最大子数组问题 本文只是做一个记录,更细致的思路请查看算法导论 最大子数组结构体 暴力求解 计算所有的数组区间的和进而得到最大的子数组,算法复杂度为θ(n2)。这种方法在小规模的数据表现很好,d但是在大规模数据中则很糟糕,但可用作分治算法的改进。实现的思路是先计算从以 为起始的最大子数组,然后从[1 ...
分类:
编程语言 时间:
2018-09-01 21:49:20
阅读次数:
212
这个题直接暴力求解的话时间复杂度肯定是不行的,所以,我们要计算每个数值的贡献,对每一个数求他当最小值当了多少次,当最大值当了多少次,最后当最大值的次数乘以这个数值减去当最小值的次数乘以数值就得到这个数的贡献,依次把这n个数的贡献加起来就是整个极差之和。 在计算一个数当了多少最值的时候,我们要理解问题 ...
分类:
编程语言 时间:
2018-08-19 10:54:14
阅读次数:
254
题目链接:http://120.78.128.11/Problem.jsp?pid=3445 最开始的思路就是直接暴力求解,先把所有的数值两两存入结构体,再从小到大枚举。用二分的思路去判断数值以及出现,结果TLE,但优化一下应该也能过,因为题目说只有两组数据。代码如下: 1 #include <io ...
分类:
其他好文 时间:
2018-08-13 14:10:38
阅读次数:
149
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6374 解题的思路有两个,一个暴力求解,时间复杂度为N^3,另一种是将木棍从大到小排序,按照三个三个一起进行遍历,能够成三角形就是答案 下面是代码: #include<stdio.h> int main( ...
分类:
其他好文 时间:
2018-08-13 00:47:35
阅读次数:
146
简介 线性筛数一般用于筛选素数,有时也可以用于求因数个数和因数和等,但是由于我太蒟了,所以不会,所以这里暂时不列出来。 筛选素数的方法有很多种,第一种是暴力求解法: 对于一个要判断是否是素数的数n,我们通过传统说明“n是素数,表示这个n不被n以内的任何数整除(除了1)”来求,把i=2~n全部枚举一遍 ...
分类:
其他好文 时间:
2018-08-12 23:37:14
阅读次数:
230
在差分数组上稍加改变,就可以实现这个骚操作 首先我们先来看一看普通的树状数组(基于差分)怎么暴力的求解区间和~~就是询问区间长度次和~~ $\sum^{i=1}_{len}\sum^{j=1}_{i}base[j]$ base为原数列 以上便是暴力求解,然后我们可以发现$base[i]$被加了$p ...
分类:
编程语言 时间:
2018-06-22 17:51:25
阅读次数:
178
解题思路(暴力解法) 1. 平行于x轴的正方形和与x轴成45度倾斜的正方形相交的点中必定有整数点。即若两正方形相交,必定存在整数i,j,使(i,j)同时属于两个正方形。 2. 我们把两个正方形中的整数点都找出来,看一下有没有重复点,就可以判断是否相交。 代码 c++ include using na ...
分类:
其他好文 时间:
2018-06-17 13:36:04
阅读次数:
249
在网上看到2018年刑侦科推理试题,发现这是一个PYTHON很好的练笔程序,所以就暴力求解了一下。 答案:BCACACDABA 55行代码版本: 改进后的38行代码版本: ...
分类:
编程语言 时间:
2018-06-12 22:24:42
阅读次数:
190
题目: 题目解读:该题只让提交一个整数,在比赛时遇到这种题最好办法也就是暴力求解了,两层循环遍历前进和后退的次数,进行求解最小次数。 附代码 ...
分类:
其他好文 时间:
2018-05-20 14:22:09
阅读次数:
207
学长的题解:显然,暴力求解的复杂度是无法承受的。考虑这样的一种暴力,我们把 z 到根上的点全部打标记,对于 l 到 r 之间的点,向上搜索到第一个有标记的点求出它的深度统计答案。观察到,深度其实就是上面有几个已标记了的点(包括自身)。所以,我们不妨把 z 到根的路径上的点全部 +1,对于 l 到 r ...
分类:
其他好文 时间:
2018-05-08 22:23:09
阅读次数:
136