![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 74
catfishbear
acmer
展开
-
uva 101
数据结构+模拟~题意大概有N个木块,有4种操作。move a onto b 将a木块和b木块上面的木块移回最开始的地方(这个最坑了,英语真心一开始木有看懂。)然后把a移到b上面。move a over b 只把a木块上面的木块移到原来的位置,然后把a移到有b的一堆木块上即可(不论b是否是最上面)pile a onto b 把a和a上面的一堆木块移动到b上面,b上面的木块移回到最初的原创 2014-02-28 15:35:24 · 513 阅读 · 0 评论 -
uva 699 - The Falling Leaves
数据结构,树。求每列各结点的合,左子树往左边多一列,右子树往右边。看题目中的图很容易理解。。注意,有可能亮点会重合。还有输入有换行。一开始没看懂样例可以建树做,不过我觉得太麻烦了直接将开个大点的数组,中间那个数字存根结点的,然后若往左,则坐标减减,往右则加。#include#include#includeconst int MAXN=2000;int v[MAXN],mid原创 2014-03-02 21:48:31 · 519 阅读 · 0 评论 -
uva 548 - Tree
给出一个树的中序遍历和一个树的后序遍历各个结点的值。找出哪条路径到叶子结点的值(为各个结点之和)最小,如果有两条路径的相等,则取结束的结点较小的路径。输出最后一个结点的值。用中序遍历和后序遍历递归求路径的和#include#include#includeconst int MAX1=1e8+100;const int MAXN=10000+10;int a[MAXN],b原创 2014-03-01 14:51:37 · 569 阅读 · 0 评论 -
uva 673 - Parentheses Balance
括号问题。若为(或者【则存入栈,若相反则出栈,对应才能出栈。若有一个不对应,则不正确,或者最后栈不为空。#include#include#include#includeusing namespace std;const int MAXN=150;int main(){ //freopen("in.txt","r",stdin); //freopen("out原创 2014-03-02 21:44:17 · 569 阅读 · 0 评论 -
uva 133 - The Dole Queue
数据结构,双向链表。一个人从第一个开始逆时针数,一个人从最后一个开始顺时针数,数到的人出去,如果是同一个人则只有那一个人出去。构建链表时注意,如果数的两个人相邻的话,则连接链表时不能直接连数的那人左右两边的人。#include#includeconst int MAXN=30;int right[MAXN];int left[MAXN];void link(int a,int原创 2014-03-01 08:50:35 · 480 阅读 · 0 评论 -
uva 536 - Tree Recovery
终于看懂了树的先序遍历,中序遍历,和后序遍历。递归实现的。从先序遍历找到根结点,然后找到根结点在中序遍历中的位置,之后递归实现左右子树的后序遍历preorder(T) = T的根结点 + preorder (T的左子树) + preorder(T的右子树);inorder(T)=inorder(T的左子树)+ T的根结点 + inorder(T的右子树);postorder(T)=原创 2014-03-01 14:37:58 · 585 阅读 · 0 评论 -
codeforces 455B A Lot of Games
题意:给定一些字符串,两个人玩游戏,每次可以添加一个字符原创 2014-08-17 16:12:16 · 480 阅读 · 1 评论