摘要:
输入一个m行n列的字符矩阵,统计字符“@”组成多少个八连块。如果两个字符“@”所在的格子相邻(横、竖或者对角线方向),就说它们属于同一个八连块。 Sample Input 1 1 * 3 5 *@*@* **@** *@*@* 1 8 @@****@* 5 5 ****@ *@@*@ *@**@ @ 阅读全文
摘要:
哈夫曼树 1.题目描述: 哈夫曼树,第一行输入一个数n,表示叶结点的个数。 需要用这些叶结点生成哈夫曼树,根据哈夫曼树的概念,这些结点有权值,即weight,题目需要输出所有结点的值与权值的乘积之和。 输入: 输入有多组数据。每组第一行输入一个数n,接着输入n个叶节点(叶节点权值不 超过100,2< 阅读全文
摘要:
二叉树的深度遍历 输入一个树状天平,根据力矩相等原则判断是否平衡。平衡输出YES,否则输出NO。所谓力矩相等,就是,其中和分别为左右两边砝码的重量,D为距离。 采用递归(先序)方式输入:每个天平的格式为,,,,当或为0时,表示该“砝码”实际是一个子天平,接下来会描述这个子天平。当时,会先描述左子天平 阅读全文
摘要:
从中序和后序恢复二叉树 给一颗带权(权值各不相同,都是小于10000的正整数)的二叉树的中序和后序遍历序列,找一个叶子使得它到根的路径上的权值尽可能小,如果有多解,取叶子权值小的。输入中第一行为中序遍历,第二行为后序遍历。 例如输入: 3 2 1 4 5 7 6 3 1 2 5 6 7 4 输出 1 阅读全文
摘要:
输入一颗二叉树,你的任务是按从上到下、从左到右的顺序输出各个结点的值。每个结点都按照从根结点到它的移动序列给出(L表示左,R表示右)。在输入中,每个结点的左括号和右括号之间没有空格,相邻结点之间用一个空格隔开。每颗树的输入用一对空括号“()”结束(这对括号本身不代表一个结点)。如果从根到某个叶结点的 阅读全文
摘要:
描述 有一颗二叉树,最大深度为D,且所有叶子的深度都相同。所有结点从左到右从上到下的编号为1,2,3,…,2的D次方减1(满二叉树)。在结点1处放一个小猴子,它会往下跑。每个内结点上都有一个开关,初始全部关闭,当每次有小猴子跑到一个开关上时,它的状态都会改变,当到达一个内结点时,如果开关关闭,小猴子 阅读全文
摘要:
问题描述 给定一个m × n (m行, n列)的迷宫,迷宫中有两个位置,gloria想从迷宫的一个位置走到另外一个位置,当然迷宫中有些地方是空地,gloria可以穿越,有些地方是障碍,她必须绕行,从迷宫的一个位置,只能走到与它相邻的4个位置中,当然在行走过程中,gloria不能走到迷宫外面去。令人头 阅读全文
摘要:
#include"iostream" #include"iomanip" #include"fstream" using namespace std; //复制 文件path2 到 文件path1,path1不存在就创建 bool fileCopy(char *path1,char *path2); int main(){ fileCopy("my1.png","屏幕截图(1).png"... 阅读全文
摘要:
1 #include"iostream" 2 #include"time.h" 3 using namespace std; 4 class matrix{ 5 private: 6 double **a; 7 int list; 8 int line; 9 public: 10 matrix(int line,i... 阅读全文
摘要:
#include"iostream" using namespace std; void move(int n,char a,char b,char c){ if(n == 1){ cout<<n<<ends<<a<<" to "<<c<<endl; } else{ move(n - 1,a,c,b); cout<<n<<... 阅读全文