链接:http://vjudge.net/problem/18284 分析:摊煎饼问题。以从大到小的顺序依次把每个数排到正确的位置,比如当处理第i大的煎饼时,是不会影响到第1,2,3,...,i-1大的煎饼的(它们已经正确的翻到了煎饼堆底部的i-1个位置上),翻煎饼的方法是先翻到最上面,然后翻到正确 ...
分类:
其他好文 时间:
2016-09-11 18:37:46
阅读次数:
159
链接:http://vjudge.net/problem/51167 分析: ...
分类:
其他好文 时间:
2016-09-11 18:33:56
阅读次数:
371
初期:一.基本算法: (1)枚举. (poj1753,poj2965) (2)贪心(poj1328,poj2109,poj2586) (3)递归和分治法. (4)递推. (5)构造法.(poj3295) (6)模拟法.(poj1068,poj2632,poj1573,poj2993,poj2996) ...
分类:
其他好文 时间:
2016-09-09 22:08:13
阅读次数:
236
输入n,由n得到集合D{1~n},输出集合D的所有子集; 方法1:增量构造法(依次往集合中增加一个元素) 代码: #include <bits/stdc++.h>#define ll long long#define MAXN 100+10using namespace std;int a[MAXN ...
分类:
其他好文 时间:
2016-09-04 11:39:51
阅读次数:
137
题目链接:http://codeforces.com/problemset/problem/708/B 意思是给出四个参数 a00表01串中00对的数量 a01表01串中01对的数量 a10表01串中10对的数量 a11表01串中11对的数量 求出一个符合条件的01串,如果不存在输出Impossib ...
分类:
其他好文 时间:
2016-08-27 12:52:10
阅读次数:
130
1.线段树的树高: 这里的n=r-l+1,至多2*(log2n-1)个点。 2.区间查询时,每层至多只有两个区间会被询问。(父亲被完全覆盖的孩子,在这一层不会被询问了。) 3.线段树的总的节点数 但实际上我们做线段树,开数组时,仅仅开两倍*n是不够的(这里指的是线段树的堆式储存)。 然后用“构造法” ...
分类:
编程语言 时间:
2016-08-17 20:56:17
阅读次数:
181
方法一:增量构造法 理解递归必须得理解函数到底是做什么的。 方法二:位向量法 枚举每一位选或者不选,复杂度比方法一略高但更好理解,因为与输出全排列思路差不多,满n位就输出。 缺点是输出不是按照字典序。 方法三:二进制法 稍加思考就会发现,方法二其实与二进制是对应的。 这个方法优点就是代码简单。 注意 ...
分类:
编程语言 时间:
2016-07-30 14:53:34
阅读次数:
519
堆+huffman树。 huffman二叉树构造法就是每次把最小的俩个合并起来,构成一个树。 但k叉树每回减少(k-1)个,可能最后会有一个坑位被浪费掉,导致答案增加(用心去感受) 于是我果断回忆去年他们游记里面写到,多余的先合并下。。 然后1A了。。。 #include #include #inc... ...
分类:
其他好文 时间:
2016-06-28 09:23:48
阅读次数:
189
题意:给定一个序列,让你从一个升序列变成该序列,并且只有两种操作,操作1:交换前两个元素,操作2:把第一个元素移动到最后。 析:一开始的时候吧,不会,还是看的题解,首先是要逆序来做,这样可能好做一点,那么操作1不变,操作2变成把最后一个元素放到最前面。 就像是冒泡排序一样,如果第一个元素大于第二个, ...
分类:
其他好文 时间:
2016-06-22 20:37:09
阅读次数:
160
水题: 3299,2159,2739,1083,2262,1503,3006,2255,3094 初级: 一、基本算法: (1)枚举 (1753,2965) (2)贪心(1328,2109,2586) (3)递归和分治法 (4)递推 (5)构造法(3295) (6)模拟法(1068,2632,157 ...
分类:
其他好文 时间:
2016-06-09 18:39:20
阅读次数:
205