摘要: 给出一个长度为n的序列A1,A2,A3,...An,求最大连续和。换句话说,要求找到1=<i=<j=<n,使得Ai+...+Aj尽量大。题目似乎很简单,但是在n非常大的时候(如n>10000)时,采用最习惯使用的暴力过的话似乎就有一些难度,下面逐步给出了几种方法,解决问题在可以解出来时,应该找求最优解方法一:枚举直接在i到j之间一一枚举。复杂度O(n^3) 1 #include<stdio.h> 2 int main() 3 { 4 int a[1000],n; 5 while(scanf("%d",&n)!=EOF) 6 { 7 阅读全文
posted @ 2013-02-12 17:25 再见~雨泉 阅读(1026) 评论(2) 推荐(1)
摘要: Description考虑将如此安排在一个 3 x3 行列中的九个时钟:目标要找一个最小的移动顺序次将所有的指针指向12点。 下面原表格列出了9种不同的旋转指针的方法,每一种方法都叫一次移动。 选择1到9号移动方法,将会使在表格中对应的时钟的指针顺时针旋转90度。 移动方法 受影响的时钟 1 ABDE 2 ABC 3 BCEF 4 ADG 5 BDEFH 6 CFI 7 DEGH 8 GHI 9 EFHI Example[但这可能不是正确的方法,请看下面]Input第1-3行: 三个空格分开的数字,每个数字表示一个时钟的初始时间,3,6,9,12。 数字的含意和上面第一个例子一样。Output 阅读全文
posted @ 2013-02-12 14:25 再见~雨泉 阅读(543) 评论(0) 推荐(0)