摘要:
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3308 题意:给定n个数,两个操作: U A B:将位置A的数值改成B Q A B:查询[A,B]内最长连续上升子序列的长度。 注意到‘连续’一词,可以用线段树维护[L,R]区间内的LICS。 定义结构N 阅读全文
摘要:
题目链接:http://poj.org/problem?id=3667 题意:有一个hotel有n间房子,现在有2种操作: 1 a,check in,表示入住。需要a间连续的房子。返回尽量靠左的房间编号并更新。 2 a b,check out,从a开始退房,一共退到a+b-1。 seg数组l表示从左 阅读全文
摘要:
用过spark,对wordcount这个演示程序记忆犹新,于是想试着实现一个简单的wordcount。又因为在学习函数式编程,希望可以把数据看成一个整体,在现有的函数上进行操作。于是就有了这一行代码。 这行代码包括对单词的粗略处理,包括全部转化为小写,去除标点符号等。接下来用filter去掉了空行, 阅读全文
摘要:
题目链接:http://codeforces.com/contest/724/problem/B 题意:给出n*m的数字阵,每行数都是1-m的全排列,最多可以交换2个数一次,整个矩阵可以交换两列一次。问在n+1次操作内是否可以让这整个矩阵每行都变成单调递增的。 先考虑不用交换列的情况,那么只需要关心 阅读全文
摘要:
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2846 题意:求一堆串中有多少个以0开始的子串包含目标串。 可以把所有的串符合要求的子串放入字典树统计。这时候会有一个问题,那就是adddd这样的单词:样例中已经说明了,这样的单词明显是只算一次的。所以可 阅读全文
摘要:
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2845 题意:某行只能选不相邻的数字,行只能选不相邻的行。问如何选使得数字的和最大。 200000显然二维数组存不下,那么针对每一行处理出来一个最大值结果,之后再对这个最大值结果做相同的操作,就可以用两个 阅读全文
摘要:
题目链接:http://poj.org/problem?id=1416 题意:一段数分成好几段相加,求最大的且不大于目标值的组合。 DFS,用vector<int>tmp来记录中间结果,回溯的时候pop掉。判重用了个map,其实用一个flag打标记也可。 状压枚举也可以 阅读全文
摘要:
最近在学一种对于我来讲是全新的编程范式:函数式编程。 这种编程范式旨在使用有限的函数来完成多种不同的需求,最常见的就是map reduce filter这三种操作,基础都是以集合为单位的。希望自己通过读书思考和练习能够掌握这一种程序设计的理念。 下面是一个判断是否是完美数的小程序,是用python写 阅读全文
摘要:
题目链接:http://poj.org/problem?id=3600 枚举行,判断列是否相同。 阅读全文
摘要:
题目链接:http://poj.org/problem?id=3734 题意:n个方块4个颜色,现在要求涂色,其中两种颜色的数量是偶数,问多少种情况。 考虑sta(i)为当前i块的时候的合法涂色种类数,则有:EE、OE(EO)、OO三种情况。 EEi = 2 * EE(i-1) + OE(EO)(i 阅读全文