随笔分类 - C++算法&写题的一些操作
刷题的一点东西&细节操作
摘要:题目描述 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 比如n=3时,2*3的矩形块有3种覆盖方法: f(n)=f(n-1)+f(n-2) 推广:如果是3*1的格子:f(n)=f(n-1)+f(n-3) 如果是k*1
阅读全文
摘要:【Win 一般用3、4、5】 【Linux7、8】 目前,存在着各种计时函数,一般的处理都是先调用计时函数,记下当前时间tstart,然后处理一段程序,再调用计时函数,记下处理后的时间tend,再tend和tstart做差,就可以得到程序的执行时间,但是各种计时函数的精度不一样.下面对各种计时函数,
阅读全文
摘要:T9 糖果 状态压缩dp 【问题描述】 糖果店的老板一共有 M 种口味的糖果出售。为了方便描述,我们将 M 种 口味编号 1 ∼ M。 小明希望能品尝到所有口味的糖果。遗憾的是老板并不单独出售糖果,而 是 K 颗一包整包出售。 幸好糖果包装上注明了其中 K 颗糖果的口味,所以小明可以在买之前就知 道
阅读全文
摘要:在不得不先读入一行,对此行的长度做一个判断之后,再拿这一行中的某些值 这时候就先得cin.getline(line,size)得到一行 但是在取这一行之前,如果使用了cin>>, 就必须(cin>>).get(); 或者用一个getchar(); 例题蓝桥杯 2018_C++_A_6 标题:航班时间
阅读全文
摘要:/* //ABDCDCBABC CBABCDCDBA 7 最长相同子序列(不需要连续)采用动态规划DP 二维表 输出最后一个位置就可*/#include <iostream> #include <string> using namespace std; int n, m; string a, b;
阅读全文
摘要:#include <iostream> #include <stdlib.h> #include <math.h> #include <sstream> using namespace std; void i2s(int x, string &basic_string) { stringstream
阅读全文
摘要:#include <iostream> #include <string> #include <sstream> using namespace std ; void i2s(int x, string &basic_string) { stringstream ss; ss << x; ss >>
阅读全文
摘要:基础 #include <iostream> #include <algorithm> #include <cstring> #include <stdio.h> using namespace std; typedef unsigned long long LL; LL n, m, mod; vo
阅读全文
摘要:#include <iostream> #include <algorithm> #include <stdio.h> #include<cstdlib> #include<cstdio> using namespace std; int main() { long long t10[100]; c
阅读全文
摘要:/*手动:交换 再 交换自动:next_permutation*/#include <iostream> #include <string> #include <sstream> #include <algorithm> #include <cstring> using namespace std
阅读全文
摘要:深度优先搜索(DFS) 深度优先搜索在搜索过程中访问某个顶点后,需要递归地访问此顶点的所有未访问过的相邻顶点。 初始条件下所有节点为白色,选择一个作为起始顶点,按照如下步骤遍历: a. 选择起始顶点涂成灰色,表示还未访问 b. 从该顶点的邻接顶点中选择一个,继续这个过程(即再寻找邻接结点的邻接结点)
阅读全文
摘要:来看一个实例 首先在地图上给你若干个城镇,这些城镇都可以看作点,然后告诉你哪些对城镇之间是有道路直接相连的。最后要解决的是整幅图的连通性问题。比如随意给你两个点,让你判断它们是否连通,或者问你整幅图一共有几个连通分支,也就是被分成了几个互相独立的块。像畅通工程这题,问还需要修几条路,实质就是求有几个
阅读全文
摘要:#include <iostream> using namespace std; class Complex2 { public: Complex2(float x = 0, float y = 0) :_x(x), _y(y){ } void dis() { cout << "(" << _x <
阅读全文
摘要:数据结构——树 定义:树是一个n(n>=0)个结点的有序合集 名词理解: 结点:指树中的一个元素; 结点的度:指结点拥有的子树的个数,二叉树的度不大于2; 数的度:指树中的最大结点度数; 叶子:度为0的结点,也称为终端结点; 高度:叶子节点的高度为1,根节点高度最高; 层:根在第一层,以此类推; 二
阅读全文
摘要:1.基础函数输入输出:cin,cout,getchar,gets,putchar,puts,printf,scanf格式化:sprintf,sprintf_s,wsprintf,wsprintf_s,swprintf,swprintf_s (请仔细比较这几组函数的区别)格式化值:%% -返回百分号%
阅读全文
摘要:1.若要使用 栈,需要有头函数#include<stack> 2.STL容器stack成员函数 bool empty() 判断是否为空 void pop() 删除栈顶元素 void push(const TYPE &val) 进栈 TYPE &top() 查看栈顶元素 size_type size(
阅读全文
摘要:queue queue模板类的定义在<queue>头文件中。 与stack模板类很相似,queue模板类也需要两个模板参数,一个是元素类型,一个容器类型,元素类型是必要的,容器类型是可选的,默认为deque类型。 定义queue对象的示例代码如下: queue<int> q1; queue<doub
阅读全文
摘要:在C语言中,经常需要对内存进行操作,里面涉及很多函数,但是memset函数的使用有一点需要大家格外注意,这也是我在做项目时遇到过的一个问题,调试了很久才找出来错误。 函数原型是:void *memset(void *s, int ch, size_t n); 函数功能是:将s所指向的某一块内存中的前
阅读全文
摘要:list是C++标准模版库(STL,Standard Template Library)中的部分内容。实际上,list容器就是一个双向链表,可以高效地进行插入删除元素。
使用list容器之前必须加上STL的list容器的头文件:#include
阅读全文

浙公网安备 33010602011771号