摘要:
【题目描述】 阿福是一名经验丰富的大盗。趁着月黑风高,阿福打算今晚洗劫一条街上的店铺。 这条街上一共有 N 家店铺,每家店中都有一些现金。阿福事先调查得知,只有当他同时洗劫了两家相邻的店铺时,街上的报警系统才会启动,然后警察就会蜂拥而至。 作为一向谨慎作案的大盗,阿福不愿意冒着被警察追捕的风险行窃。 阅读全文
摘要:
http://ybt.ssoier.cn:8088/problem_show.php?pid=1250 【题目描述】 一座城堡被分成m*n个方块(m≤50,n≤50),每个方块可有0~4堵墙(0表示无墙)。下面示出了建筑平面图: 图中的加粗黑线代表墙。几个连通的方块组成房间,房间与房间之间一定是用黑 阅读全文
摘要:
原题:https://www.luogu.com.cn/problem/P1017 (不再粘贴题目了,太麻烦) P1017 进制转换 【普及/提高-】 题解 第一部分:痛苦与绝望 经过了两个小时的煎熬,这道题基本可以算是将近把我逼疯了。看着其他同学的五一假期作业分数早已经突破800分,【提高+/省选 阅读全文
摘要:
题目描述 单词接龙是一个与我们经常玩的成语接龙相类似的游戏,现在我们已知一组单词,且给定一个开头的字母,要求出以这个字母开头的最长的“龙”(每个单词都最多在“龙”中出现两次),在两个单词相连时,其重合部分合为一部分,例如 beast和astonish,如果接成一条龙则变为beastonish,另外相 阅读全文
摘要:
题目描述 我们可以把由“0”和“1”组成的字符串分为三类:全“0”串称为B串,全“1”串称为I串,既含“0”又含“1”的串则称为F串。 FBI树是一种二叉树,它的结点类型也包括F结点,B结点和I结点三种。由一个长度为2^N 的“01”串S可以构造出一棵FBI树T,递归的构造方法如下: T的根结点为R 阅读全文
摘要:
2-sat问题:设x1~xn为bool,给定m个逻辑表达式(形式为xi <逻辑运算> x2 = 值),求x1~xn的一组解,使得所有逻辑表达式成立:做法:建立2n个点,分别表示点n的true点和false点。连一条边,当且仅当根据一个逻辑表达式能绝对确定xi=true(or false)时xj的取值 阅读全文
摘要:
struct union_find_set { int father[MAXN];//每个元素的祖先 union_find_set(int limit)//构造函数,对于每一个元素,其父亲初始化为它本身 { for(int i=1;i<=limit;i++) { father[i]=i; } } i 阅读全文
摘要:
一、图的定义:点用边连起来 二、图的一些概念 1.有向图:图的边有方向,只能按箭头从一点走到另一点而不能逆着走。无向图:可以双向在两个点间走。 2.结点的度:无向图中与结点相连的边的数目; 结点的入度:有向图中以这个结点为终点的有向边的数目; 结点的出度:有向图中以这个结点为起点的有向边的数目; 3 阅读全文
摘要:
一、二叉树的定义:度数(每个节点所有的子树的最大值)为2的数。 二、二叉树的性质: 1.在二叉树的第 i 层上最多有 2 ^ (i - 1) 个结点; 2.深度为 k 的二叉树最多有 2 ^ k - 1 个结点; 2-1.一棵深度为 k 且有 2 ^ k - 1 个结点的二叉树被称为满二叉树; 2- 阅读全文
摘要:
在C++中有很多数据结构,包括栈(stack)、队列(queue)、容器(vector)、数对(pair)等。这篇博客的重点是队列。 1.队列的定义:一种线性数据结构,可以插入和弹出数据。每个队列除了有数据,还有两个指针,“头指针”指向队列的第一个元素(以下简称队首),“尾指针”指向队列的最后一个元 阅读全文