Skew Binary斜二进制斜二进制的每位为0, 或 1, 最低位可以为2. 第k位的。。。代表 2k+1 -1,给出一个斜二进制数,把他转换成十进制数。正常模拟就好 1 #include 2 #include 3 char A[1000]; 4 5 int main() { 6 wh...
分类:
编程语言 时间:
2014-10-17 21:48:03
阅读次数:
253
Integer Inquiry输入几行大整数, 求他们的和吗以0表示输入结束
分类:
编程语言 时间:
2014-10-16 22:56:23
阅读次数:
206
给你一个可比较大小顺序的集合,让你生成所有按照字典序排列的子集,本文借鉴自刘汝佳算法入门经典。
方法一:
增量构造法:一次选取一个元素到集合中。
#include
using namespace std;
int a[20];
/*递归输出n以内所有的子集,其中cur为当前下标,初始值0*/
void print_subset(int n,int* a,int cur){
for (in...
分类:
其他好文 时间:
2014-10-15 22:04:01
阅读次数:
262
http://acm.hdu.edu.cn/showproblem.php?pid=3065刘汝佳的模板真的非常好用,这道题直接过学到:cnt数组记录单词出现次数以及map存储单词编号与字符串,便于处理相关信息上代码:#include #include #include #include #incl...
分类:
其他好文 时间:
2014-10-09 00:56:27
阅读次数:
173
分析:这道题是刘汝佳灰书上所给的一道题。题目很简单,就是处理字符串并排序输出。但我却卡了很久,试了很多不同的方式,至今使用字符串的一个还没有调试出来。POJ 1002是一道几乎相同的题(不过没有多组数据)。注意事项:1. 数据量很大,最好不用cin/cout(当然也可以取消std::同步)。2. 每...
分类:
其他好文 时间:
2014-10-06 01:44:39
阅读次数:
286
说说:
这道题的其实就是给你一个字符串,然后输出该字符串所含字符能构成的全部的串,并按字典升序输出。解法的话,无非就是递归实现。先将原字符串排序,然后逐一确定每个位置上的字符。为了防止有重复的字符串出现,每个位置上的字符不能与之前相同。具体的解释请参见刘汝佳的《算法竞赛入门经典》P118,生成可重集的排列。
源代码:
#include
#include
#define MAX 10+5
...
分类:
其他好文 时间:
2014-09-27 18:51:20
阅读次数:
147
这个题目,放在周未,卡了两天,恶补了两天dijkstra算法,各种书都查阅了,还是刘汝佳提供的dijkstra能完美解决,一次通过。并且,将算法进行了封装,这个,有点强:/*ID: qq104801LANG: C++TASK: butter*/#include #include #include #...
分类:
其他好文 时间:
2014-09-14 17:56:17
阅读次数:
359
最近学习了一下 最小生成树 算法。
所谓最小生成树算法,就是给出一个连通图g[ maxn ][ maxn ], 找出这个连通图的边权和最小的生成图(树)。
可以实现这个目的的算法,我叫它最小生成树算法。kruskal算法就是我学到的一种实现这种功能的算法。
对于kruskal算法的描述以及简单的证明在刘汝佳第二版上已经说得够明白
本题就是求 最小生成树 里面的 最大边权和最小边权 相差最...
分类:
其他好文 时间:
2014-08-30 16:29:49
阅读次数:
235