03 2015 档案

摘要:蓝桥杯 枚举 奇怪的分式标题:奇怪的分式 上小学的时候,小明经常自己发明新算法。一次,老师出的题目是: 1/4 乘以 8/5 小明居然把分子拼接在一起,分母拼接在一起,答案是:18/45 (参见图1.png) 老师刚想批评他,转念一想,这个答案凑巧也对啊,真是见鬼! 对于分子、分母都是 1~9 中的... 阅读全文
posted @ 2015-03-31 00:03 fancy_boy 阅读(689) 评论(0) 推荐(0)
摘要:问题描述如果一个自然数N的K进制表示中任意的相邻的两位都不是相邻的数字,那么我们就说这个数是K好数。求L位K进制数中K好数的数目。例如K = 4,L = 2的时候,所有K好数为11、13、20、22、30、31、33 共7个。由于这个数目很大,请你输出它对1000000007取模后的值。输入格式输入... 阅读全文
posted @ 2015-03-30 11:56 fancy_boy 阅读(3556) 评论(2) 推荐(1)
摘要:对于求逆序数问题,学会去利用树状数组进行转换求解方式,是很必要的。一般来说我们求解逆序数,是在给定一串序列里,用循环的方式找到每一个数之前有多少个比它大的数,算法的时间复杂度为o(n2)。那么我们通过树状数组可以明显提高时间效率。我们可以按照排列的顺序依次将数字放入树状数组中,并依次更新预与之相关联... 阅读全文
posted @ 2015-03-14 23:43 fancy_boy 阅读(370) 评论(0) 推荐(0)
摘要:Super Jumping! Jumping! Jumping!首先对于动态规划问题要找出其子问题,如果找的子问题是前n个序列的最长上升子序列,但这样的子问题不好,因为它不具备无后效性,因为它的第n+1的数会影响前n个序列的长度,换句话说,如果第n+1个数加上去不一定使得和前n个数加起来就是最长子序... 阅读全文
posted @ 2015-03-13 23:51 fancy_boy 阅读(2479) 评论(0) 推荐(0)
摘要:我们用递归+记忆化的方法来解决普通整数划分问题:定义 f(n,m)为将整数n划分为一系列整数之和,其中加数最大不超过m。得到下面的递推关系式:当n==1 || m==1 只有一种划分,即 1 或者 1+1+1......+1当m>n 显然,等价于 f(n,n)当m==n 此时:我考虑加数包含m与否的... 阅读全文
posted @ 2015-03-11 20:16 fancy_boy 阅读(420) 评论(0) 推荐(0)
摘要:将一个3*n的矩形用1*2的矩形填充,n为奇数时一定不能被填满,n*3%2==1接下来处理这个问题我们要从简单的情况开始考虑,所谓递归就是要能将问题的规模不断减小,通过小问题的解决最后将复杂问题解决。如果是3*2的情况仅有3种可能那么我们来考虑3*4的矩形是否一些就是有这两个3*2的矩形拼接在一起的... 阅读全文
posted @ 2015-03-07 17:33 fancy_boy 阅读(291) 评论(0) 推荐(0)
摘要:树状数组(Binary Indexed Tree(BIT), Fenwick Tree)是一个查询和修改复杂度都为log(n)的数据结构。主要用于查询任意两位之间的所有元素之和,但是每次只能修改一个元素的值;经过简单修改可以在log(n)的复杂度下进行范围修改,但是这时只能查询其中一个元素的值。这种... 阅读全文
posted @ 2015-03-03 23:31 fancy_boy 阅读(1375) 评论(0) 推荐(1)