#include#include#include#includeusing namespace std;int n,m;#define N 32#define mod 10007LL#define mod2 10000007#define inf 0x3ffffffftypedef long lon...
分类:
其他好文 时间:
2014-07-09 21:48:32
阅读次数:
358
Description
Consider an infinite full binary search tree (see the figure below), the numbers in the nodes are 1, 2, 3, .... In a subtree whose root node is X, we can get the minimum number in this ...
分类:
其他好文 时间:
2014-07-06 11:36:14
阅读次数:
284
最小生成树第K小边问题。
题意是说有N个点,有两种连通方式,卫星和无线,卫星随意连通,无限需要配置接收器,接收器价格跟能接受的距离是一样的。
卫星频率是有限的,有M个频道。
也就是说组建最小生成树,前面 n-1-m 边用无线,后面m边用卫星。
用一个数组保存每次所需的代价,最后输出就好。
#include
#include
#include
#include
...
分类:
Web程序 时间:
2014-07-06 11:32:45
阅读次数:
151
又是一道大数相加的题目,直接模板或者Java都可以水过了。
循环相加33次就可以了,计算出A99是第几个,准确输出答案。
#include
#include
#include
using std::string;
const int MAX_B = 5120;
char buf[MAX_B];
int id = 0, len = 0;
inline char getFromBuf(...
分类:
其他好文 时间:
2014-07-06 10:35:58
阅读次数:
190
本题就是说一个小神童,能计算加减法。
不过题目知识说这个小神童,到底有多神,要我们自己发现。
因为最后给出的数据非常非常巨大,听说接近50k就是超过50000个数位相加,可想而知他多神。
看来题目也是考IQ啊!
如果以为是超级水题,按照一般加减法做,肯定是WA了。
这里给出使用string的加减法运算,因为string是长度可增可减的,所以不管是多少位,只要内存支持,那么本算法都可以支持...
分类:
其他好文 时间:
2014-07-06 10:34:40
阅读次数:
137
题意:
给定一个序列,以最小代价将其变成单调不增或单调不减序列,这里的代价看题目公式。
思路:
很容易想到是DP。
1.
对前i个序列,构成的最优解其实就是与两个参数有关。一个是这个序列处理后的最大值mx,和这个序列处理的代价值cost。
显然最大值mx最小最好(这样第i+1个值可以不花代价直接接在其后面的可能性更大),cost最小也最好(题意要求),但是两者往往是鱼和熊掌。
用dp...
分类:
其他好文 时间:
2014-07-06 09:37:41
阅读次数:
350
也是最小生成树问题。输出剩余组成生成树的边。
Special Judge 答案不唯一。
不过很奇怪的是Kruskal 写的话。
C++提交要么刚好1000ms 要么就是TLE。
然后G++提交就是594ms。顺便求路过大神指点。
已经有很多的生成边了,用prim可能用时会少一点。
#include
#include
#include
#include
#in...
分类:
其他好文 时间:
2014-07-06 09:22:50
阅读次数:
168
简单模拟。按照题意处理一下字符串即可。
应该是写题号写错了,本来我在VirtualJudge是添加的POJ 并查集与生成树的题。
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define INF 0...
分类:
其他好文 时间:
2014-07-06 08:24:00
阅读次数:
168
最小生成树问题。
给你一组字母序列,问你最有可能的演变,也就是把所有的序列连通所花费最小。
每次派生的花费 取决于两个字符串上 不同的字母个数。
于是两两算出花费,然后Kruskal算最小。
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#i...
分类:
其他好文 时间:
2014-07-06 00:32:05
阅读次数:
291
题目大意:
求出字典序最小,重复次数最多,的子串。
思路分析:
RMQ + height 数组可以求出任意两个后缀的lcp
我们枚举答案字符串的重复的长度。
如果这个字符串的长度为 l ,而且这个字符串出现过两次或两次以上
那么你会发现在原串中 str[0] str[l] str[2*l] ....肯定有相邻的两个被包含在重复的串中。
我们求出这两个相邻的后缀的lcp
我...
分类:
其他好文 时间:
2014-07-05 23:47:48
阅读次数:
178