设答案为f(n),我们显然可以暴力地递归求解:f(n)=f(1)+f(2)+……+f(n/2)。但是n=1000,显然会超时。考虑状态最多可能会有n种,经过大量的重复计算,所以可以记忆下来,减少不必要的计算。 1 #include 2 using namespace std; 3 int n; 4 ...
分类:
其他好文 时间:
2014-10-26 18:20:58
阅读次数:
295
对于一对数(p,q),若它们的gcd为x0,lcm为y0,则:p*q/x0=y0,即q=x0*y0/p,由于p、q是正整数,所以p、q都必须是x0*y0的约数。所以O(sqrt(x0*y0))地枚举约数,依次用gcd判断。 1 #include 2 #include 3 using namespac...
分类:
其他好文 时间:
2014-10-26 18:12:47
阅读次数:
231
啊,noip难度题。。。蒟蒻调了半天。。。嘛、先是求LIS的长度,O(n * logn)算法大家都会然后就是贪心,假设我们找到了答案的第x项,向后找第x + 1项:我们发现,只需找当前最前面的a[i]满足f[i] >= l - x的即可。 1 /***************************...
分类:
其他好文 时间:
2014-10-25 21:27:47
阅读次数:
199
题目链接:https://vijos.org/p/1100题目大意:NOIP著名的加分二叉树。给出一棵树的中序遍历,加分规则左子树*右子树+根。空子树分数为1。问最大加分的树结构,输出树结构的先序遍历。解题思路:先从小的问题看起。对于一棵子树,只要知道根是啥,就能轻松求出这棵子树的加分情况。那么就变...
分类:
其他好文 时间:
2014-10-24 18:49:15
阅读次数:
170
#272是自己打的第一场cf,感觉这一套质量挺棒的,不像后两场略水//先附上A,B,C的题解,因为离noip只剩下一点时间了,所以之后不一定还刷cf,暂且就先放上前三题好了A题目大意忘了。懒得看,反正很水。B组合数学: 题目大意:给你两个字符串;s1,s2 其中s2字符串可能含有未知的字符,对于未知...
分类:
其他好文 时间:
2014-10-24 01:37:28
阅读次数:
219
描述 Description"第一分钟,X说,要有数列,于是便给定了一个正整数数列。第二分钟,L说,要能修改,于是便有了对一段数中每个数都开平方(下取整)的操作。第三分钟,k说,要能查询,于是便有了求一段数的和的操作。第四分钟,彩虹喵说,要是noip难度,于是便有了数据范围。第五分钟,诗人说,要有韵...
分类:
其他好文 时间:
2014-10-23 14:11:55
阅读次数:
201
描述16世纪法国外交家Blaise de Vigenère设计了一种多表密码加密算法——Vigenère密码。Vigenère密码的加密解密算法简单易用,且破译难度比较高,曾在美国南北战争中为南军所广泛使用。在密码学中,我们称需要加密的信息为明文,用M表示;称加密后的信息为密文,用C表示;而密钥是一...
分类:
其他好文 时间:
2014-10-23 12:16:14
阅读次数:
164
题目如下题目描述 Description涵涵有两盒火柴,每盒装有 n 根火柴,每根火柴都有一个高度。现在将每盒中的火柴各自排成一列,同一列火柴的高度互不相同,两列火柴之间的距离定义为:,其中 ai表示第一列火柴中第 i 个火柴的高度,bi表示第二列火柴中第 i 个火柴的高度。每列火柴中相邻两根火柴的...
分类:
其他好文 时间:
2014-10-22 17:51:36
阅读次数:
385
这道题是NOIP第一道DP优化题,看似容易,实际上想要满分也颇有难度。
传送门:1002 过河
算法
此题显然要用到DP,DP方程也显而易见:
if (stone[i]) f[i]=min{f[i-j]}+1; (S
else f[i]=min{f[i-j]};
这样的时间复杂度为 O(LT) ,空间复杂度为 O(L) 。
而此题的L高达 10亿 ,所以这种朴素的方法只能得 30...
分类:
编程语言 时间:
2014-10-22 14:44:16
阅读次数:
309
P1842火柴排队Accepted标签:NOIP提高组2013[显示标签]描述涵涵有两盒火柴,每盒装有 n 根火柴,每根火柴都有一个高度。现在将每盒中的火柴各自排成一列,同一列火柴的高度互不相同,两列火柴之间的距离定义为:∑i=1n(ai?bi)2,其中ai表示第一列火柴中第 i 个火柴的高度,bi...
分类:
其他好文 时间:
2014-10-22 10:02:01
阅读次数:
205