第一题:题目大意:N个发射站排成一排,求每个发射站左右第一个比它高的发射站。 N<=1000000解题过程:1.前几天做poj的时候刚好在discuss里看到有一个神奇的东东叫单调栈,正好派上用场。。。虽然本题2s的时限RMQ+二分应该也不会超时,但是容易写错。而单调栈不仅O(N)的复杂度,写起来也...
分类:
其他好文 时间:
2014-10-22 20:20:02
阅读次数:
141
#region 单层循环 public static void CompareSingleCycle() { var data = Enumerable.Range(0, 100000000).ToArray(); ...
动态规划(DP)似乎占据了大部分的编程竞赛题目,乃至三分之一。当然,DP也不是一个学一次就Ok的单一算法。
这还取决于你是否把数据结构与算法放在同一个等级中考虑。如果你想要在编程竞赛中一展风采的话,当然,有些数据结构是你应该熟悉的。其中最重要的有范围树(Range Tree,也被称为线段树或区间树)和树状数组(BITs),也被称作Fenwick树。除此之外,许多DP算法使用了一个前缀和数组(prefix sum array)。
能想到的最精华的单一算法如下所列,排名不分先后。绝大多数非动态规划问题似乎都...
分类:
编程语言 时间:
2014-10-22 15:56:48
阅读次数:
208
坑爹的黑店maxm=10000v=[150,200,350]t=int(raw_input())for ii in range(0,t): m=int(raw_input()) f=[] for j in range(0,m+1): f.append(m) fo...
分类:
其他好文 时间:
2014-10-22 10:51:27
阅读次数:
140
初始化a = range(16)a = np.array(a)a = a.reshape(4,4)a[[ 0 1 2 3][ 4 5 6 7][ 8 9 10 11][12 13 14 15]]获取a的【0,1,4】行b = a[ range(2)+range(3,4),:][[ 0 1 2 3][...
分类:
编程语言 时间:
2014-10-21 17:31:17
阅读次数:
250
UITextRange *range = textView.selectedTextRange;
//光标位置
CGRect rect = [textView
caretRectForPosition:range.start];
当UITextView的光标在最后位置连续输入4个或以上换行符号时,输出rect为 {{inf,inf},{0,0}}...
分类:
其他好文 时间:
2014-10-21 12:16:43
阅读次数:
298
采用的的是小牛的写法,蒟蒻第一次写。。
RMQ (Range Minimum/Maximum Query)问题是指:对于长度为n的数列A,回答若干询问RMQ(A,i,j)(i,j
这里介绍ST算法:采用动态规划的思想:详见
士兵杀敌(三)
时间限制:2000 ms | 内存限制:65535 KB
难度:5
描述
南将军统率着N个士兵,士兵分...
分类:
编程语言 时间:
2014-10-21 01:05:37
阅读次数:
227
在網頁中如何使用Sikuli找特定字串呢?原理:我們可以使用 組合鍵 ctrl + 來放大網頁的比例,使得sikuli的OCR功能找的更清準實作:for i in range(4): type("+", KEY_CTRL)which = input() # Let user type the...
分类:
Web程序 时间:
2014-10-21 00:43:33
阅读次数:
328
mysql分区技术在物理存储上使数据表进行分离,逻辑上还是一张表mysql5.1以上版本有5种分区类型RANGE 分区:基于属于一个给定连续区间的列值,把多行分配给分区。LIST 分区:类似于按RANGE分区,区别在于LIST分区是基于列值匹配一个离散值集合中的某个值来进行选择。HASH分区:基于用...
分类:
数据库 时间:
2014-10-20 22:59:34
阅读次数:
260
昨天刷水累死蒟蒻了。。。每天一到题解总还是要写的。。。于是就是这个了!二维RMQ,第一反应是二维线段树,妥妥MLE + TLE想起来去年市选小题有一道一模一样的,我当时就是写二维线段树,然后MLE0分、、、真是悲剧发现长度是固定的为n,和动态规划的某个叫单调队列的优化很像:先求出每一列的某个点向下n...
分类:
其他好文 时间:
2014-10-20 22:46:03
阅读次数:
242