题意:本题意为煎饼排序,大的放在上面,小的放在下面(此题输入是从上到下输入的),为煎饼排序是通过一系列的“翻转”动作来完成的。翻转动作就是将一个小铲插到一叠煎饼中的某两个煎饼之间,然后用小铲将上面的所有煎饼翻转(即为将小铲上面的子栈倒转过来)。输出翻转的位置,即小铲上面子栈中最底下一个煎饼的位置号。 Read More
Fence Repair Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 51411 Accepted: 16879 Description Farmer John wants to repair a small length o Read More
题意:将多叉树转化为括号表示法,每个非叶结点的正下方都有一个'|'然后下方是一排'-'和字符,恰好覆盖所有子结点的正上方,单独的一行‘#’为数据的结束标志 解题思路:用gets将字符数组输入,本题不用建树,直接用广度优先递归求解,同时注意对空树的处理(需要单独判断),以及结点的符号不一定是字母,也可 Read More
本题的题意是输入起点,朝向和终点,求一条最短路径(多解时任意输出一个即可) 本题的主要代码是bfs求解,就是以下代码中的slove的主要部分,通过起点按照路径的长度来寻找最短路径,输出最先到终点的一系列点 以下代码中,用两个数组保存四个方向,运用函数walk()表示结点的方向变换,通过d[][][] Read More
题意:对于每一棵树,每一个结点都有它的水平位置,左子结点在根节点的水平位置-1,右子节点在根节点的位置+1,从左至右输出每个水平位置的节点之和 解题思路:由于上题所示的遍历方式如同二叉树的前序遍历,与天平那题不同,本题不需要构造出完整的结点左右子树,只需要构造出结点的相对位置,每次输入一个结点树,若 Read More
题意:给一棵点带权的二叉树的中序和后序遍历,找一个叶子使得他到根的路径上的权值的和最小,如果多解,那该叶子本身的权值应该最小 解题思路:1.用getline()输入整行字符,然后用stringstream获得字符串中的数字 2.用数组in_oder[]和post_order[]分别表示中序遍历和后序 Read More