09 2013 档案

摘要:题目建立上一个作业的题目基础上,上一次作业是要求在一个一维序列里找一个最大连续子串,这次task最基础的要求是在一个二维表里找一个最大连续子矩形,但是这次作业有若干个升级版,分别要求可以加入运行参数[\h][\v][\a],其中\h选项代表给定的二维表是水平循环的,\v代表给定的二维表是水平循环的,\a表示结果可以突破矩形的限制,寻找一个最大的连通块,而非矩形。 阅读全文
posted @ 2013-09-30 17:16 XDRegion 阅读(326) 评论(1) 推荐(0)
摘要:题目描述 对于一个给定的数列,求该数列最大的子串和(连续)问题分析 处理发生区间上的问题时,经常会用一个非常简单经典的思路——部分和(也有叫前缀和)。部分和的思想在很多复杂的区间上的算法中都有应用,它解决的问题是,在一个序列a[1..n]中快速求得任意子串a[n] + a[n + 1] + ... a[n + m]的和,具体过程非常简单,在原序列里,a[i]保存了在序列中第i个位置的数值,根据原序列生成一个新数列s[1..n],其中s[j] = sum{a[i], 0 0,i0,同时也保证了b[k..j]<0,那么当我们枚举到j结束之后以j+1处的元素为起始点继续枚举即可,如果全是非正数 阅读全文
posted @ 2013-09-19 22:24 XDRegion 阅读(361) 评论(4) 推荐(0)