- 博客(42)
- 收藏
- 关注
原创 习题6-3 二叉树的重建 UVa 536
题意:输入一棵树的先序遍历和中序遍历,输出后序遍历Sample Input DBACEGF ABCDEFGBCAD CBADSample Output ACBFGEDCDAB分析:二叉树是递归定义的,先序遍历的第一个节点就是根节点,然后在中序遍历中找到根节点,分成左子树和右子树,每个左子树和右子树也是二叉树,规律都是一样的,后序遍历是先兆左子树,在右子树,在根节
2015-09-30 22:07:57 351
原创 习题 6-1 平衡的括号 UVa 673
题意:一个字符串,包含空行,(,),[ ]判断括号是否合法分析:栈操作,如果是[,(,则入栈,如果)],则判断是否栈顶( ]相搭配。具体看代码#include#include#include#include#include#includeusing namespace std;int main(){ int T; char c; string s
2015-09-30 16:49:24 411
原创 hdu 5491
The NextTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 886 Accepted Submission(s): 367Problem DescriptionLet L denote the numb
2015-09-30 16:13:31 365
原创 例题6-16 单词 并查集判断连通+有向图欧拉路规律
Play on WordsSome of the secret doors contain a very interesting word puzzle. The team of archaeologists has to solve it to open that doors. Because there is no other way to open the doors, the pu
2015-09-27 21:01:48 577
转载 Java大数类
转自:http://blog.csdn.net/niushuai666/article/details/6972991大数阶乘题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=28代码如下:[java] view plaincopyimport java.io.*; import java.
2015-09-26 21:49:43 308
原创 Java 对象流的用法,将自定义类数组写入文件中
FileInputStream和FileOutputStream可以将类,数组,等写入如文件并读取。public class UserList implements Serializable{ public void writeRank(){ try {// FileInputStream f=new FileInputStream("H:/f.txt");// Ob
2015-09-23 12:04:32 5491
原创 Java中加载图片的方法
Java中添加图片,我知道有两种方法用new ImageIcon(“地址”)函数,将图片放到JLabel中,然后把JLabel放到需要的地方就可以了ImageIcon bg=new ImageIcon("./src/Images/select.png");JLabel label=new JLabel(bg);label.setBounds(0,0, bg.getIconWidt
2015-09-20 21:33:04 10339 1
原创 java中加载声音文件的方法
做过一个游戏,需要给按键添加声音。可以构造一个音乐类,需要的时候new Music(“声音文件地址”),就可以了。import sun.audio.AudioPlayer;import sun.audio.AudioStream;public class Music { String namespath; public Music(String spath){
2015-09-20 21:07:52 3909
原创 Codeforces 577B Modulo Sum 动态规划基础
B. Modulo Sumtime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputYou are given a sequence of numbers a1, a2, ..., an, an
2015-09-20 19:53:20 1127
原创 BestCoder Round #56 1002 hdu 5464 (背包问题)
Clarke and problemAccepts: 169Submissions: 372Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/65536 K (Java/Others)Problem DescriptionClarke is a patient with multi
2015-09-20 10:56:06 301
原创 例题 6-12 油田 UVa 572 用dfs求连通块
572 - Oil DepositsTime limit: 3.000 secondsOil DepositsThe GeoSurvComp geologic survey company is responsible fordetecting underground oil deposits. GeoSurvComp works with onelarge r
2015-09-18 22:25:04 658
原创 例题 6-11 四分树 UVa 297
Quadtrees A quadtree is a representation format used to encode images. The fundamental idea behind the quadtree is that any image can be split into four quadrants. Each quadrant may agai
2015-09-18 12:22:04 431
原创 例题6-9 天平 UVa 839 递归
Not soMobile Before being an ubiquous communications gadget, amobile was just a structure made of strings and wiressuspending colourfull things. This kind of mobile is usually foundhanging over crad
2015-09-18 10:32:55 367
原创 Codeforces Round #320 DIV.2
分析:细菌每次一天一分为二,给定希望看到的细菌个数,求需要放多少个细菌。1,2,4,8,16.......细菌个数每天加倍增长。#includeusing namespace std;int main(){ int x; cin>>x; int flag=1; while(x>1){ if(x%2==1)flag++; //如果x是奇数,就需
2015-09-17 20:00:28 282
原创 例题 6-7 树的层次遍历 UVa 122 建树+宽度优先遍历
BackgroundTrees are fundamental in many branches of computer science. Current state-of-the art parallel computers such as Thinking Machines' CM-5 are based onfat trees. Quad- and octal-trees are
2015-09-16 22:41:47 459
原创 例题 6-6 小球下落(Dropping Balls) UVa 679 二叉树规律
这题如果按照书上给的第一种方法会超时,不过那种模拟开关操作的方法是值得学习的分析:直接模拟最后一个小球的路线。因为二叉树的除了最后一层没有子节点,其他的每一层的小球都是一颗子二叉树的根节点,,而且每一个小球都会落在根节点上,前两而小球必定一个往左走,一个往右走,所以说落到每一层节点上的小球,只需知道他是第几个落在上面的,就知道他要往左还是往右走了,最后一层不是根节点不能走,所以需要判断D-1层
2015-09-16 18:21:04 608
原创 例题6-5 移动盒子 UVa 12657 链表(模拟链表)
分析:看到这题,就想用list,自己写了好久,其中erase和insert需要注意好多东西,好不容易搞定了,提交总是超时。大概list的遍历会很慢吧。书上用的是数组形式双向链表,学习了一下,AC了。#include #include #include #include #include #include #include#include#define LL long
2015-09-16 16:28:51 466
原创 例题6-4 破损的键盘 UVa 11988
题意:字符'['表示句首,就是光标移到了句首,’】‘表示句尾分析:这题看到有人用双端队列,把[加入队首,】加入队尾,再按照队列中的顺序输出#include #include #include #include #include using namespace std;char str[100010];int main(){ // freopen("f.txt","r",
2015-09-16 08:58:26 739
原创 例题6-1 并行程序模拟 UVa210 双端队列
concurrency simulatorPrograms executed concurrently on a uniprocessor system appear to be executed at the same time, but in reality the single CPU alternates between the programs, executing so
2015-09-15 19:48:23 5404 3
原创 STL 之 deque的用法
deque双端队列,及支持vector的随机访问[],也支持list的前后两端插入删除,功能很强大,现总结一下其主要用法deque与vector很类似,vector的函数操作好像deque都支持,而且也支持pop_front和push_front,但是占用内存较多支持dequea[100],操作主要操作函数:(1) 构造函数deque():创建一个空deque
2015-09-15 12:45:18 361
原创 子集生成
有些题目有时会用到子集生成,比如给你一些方案,选择其中几种使得方案和最优,其中一种思路就是生成所有方案的子集,枚举确定每种子集方案的情况,找到最优的方案集合。所以现在来按照刘汝佳书上的方法总结一下子集生成的几种方法:一。增量构造法每次迭出一个元素放到集合中:#include#include#include#include#includevoid print_subset(in
2015-09-15 10:49:51 288
原创 hdu 4864 排序+枚举
TaskTime Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 4580 Accepted Submission(s): 1202Problem DescriptionToday the company has m t
2015-09-15 10:12:30 277
原创 hdu 4462 构造子集+枚举
Scaring the BirdsTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 2799 Accepted Submission(s): 880Problem DescriptionIt’s harvest
2015-09-14 22:10:45 345
原创 hdu 5437 2015 ACM/ICPC Asia Regional Changchun Online 1002 优先队列
Alisha’s PartyTime Limit: 3000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 1262 Accepted Submission(s): 356Problem DescriptionPrincess Alish
2015-09-14 17:31:39 95
原创 STL 之 stack&queue&priority_queue 栈,队列与优先队列
栈,队列与优先队列都属于容器适配器即包转了现有的STL容器类的模板类,提供了一个不同的,通常更有限制性的功能,以下部分是对三个特殊的数据结构的用法总结一。stack 模板类的定义在头文件中。所谓栈,就是符合后进先出的数据结构。stack 模板类需要两个模板参数,一个是元素类型,一个容器类型,但只有元素类型是必要的,在不指定容器类型时,默认的容器类型为deque。定义stac
2015-09-14 12:49:10 551
原创 2015 ACM/ICPC Asia Regional Changchun Online 1007 hdu 5443 线段树区间最值
The Water ProblemTime Limit: 1500/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 234 Accepted Submission(s): 193Problem DescriptionIn Land wate
2015-09-14 07:53:02 370
原创 2015 ACM/ICPC Asia Regional Changchun Online hdu 5438
题目:hdu 5438PondsTime Limit: 1500/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 76 Accepted Submission(s): 28Problem DescriptionBetty owns
2015-09-13 23:01:20 312
原创 BestCoder Round #55 ($) 1001
Pyramid SplitAccepts: 247Submissions: 1097Time Limit: 4000/2000 MS (Java/Others)Memory Limit: 65536/65536 K (Java/Others)问题描述小明是城会玩,他有很多底面是正方形的黄金锥体,我们称之为金字塔,它由高度和底面正方形边长可以确定,分别称之
2015-09-12 22:06:44 356
原创 hdu 3791 二叉搜索树
二叉搜索树Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 3578 Accepted Submission(s): 1572Problem Description判断两序列是否为同一二叉搜索树序列
2015-09-06 18:02:12 327
原创 STL之list的用法
list封装了链表,所以list,每次访问可以很快的支持插入和删除操作,但是不适合随机访问,如果查找某个元素也是从头遍历,速度较慢assign() 给list赋值 back() 返回最后一个元素 begin() 返回指向第一个元素的迭代器 clear() 删除所有元素 empty() 如果list是空的则返回true end() 返回末尾的迭代器 erase() 删
2015-09-06 16:32:28 325
原创 基础模板之求一个数的质因数
一个数一定会有质因数(除了1),一个数可以分解成多个质因数的乘积,例如12=2*2*3,。求n的质因数的方法:法一。因为质因数顾名思义,即是质数也是因数,那么我们可以从2-sqrt(n)+1,求出其中的质数,然后以此判断能否被n整除。也可以从2-(sqrt(n)+1,循环判断i能否被n整除,在判断是否是质数。第一种方法比第二种快。最简单的方法是下面这种,求x的质因数,保存在数组
2015-09-06 13:13:07 2912
原创 BestCoder Round #54 (div.2) hdu 5428 求质因数
The FactorAccepts: 101Submissions: 811Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/65536 K (Java/Others)问题描述有一个数列,FancyCoder沉迷于研究这个数列的乘积相关问题,但是它们的乘积往往非常大。幸运的是,FancyC
2015-09-06 12:51:50 544
原创 BestCoder Round #54 (div.2) 1001 字符串处理+排序
A problem of sortingAccepts: 371Submissions: 1706Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/65536 K (Java/Others)问题描述给出一张许多人的年龄和生日表。你需要从年轻到年老输出人们的名字。(没有人年龄相同)输入
2015-09-06 10:08:19 358
原创 对二叉树的初步学习之递归的应用
二叉树是递归定义的:二叉树要么为空,要么由根节点(root),左子树(left subtree),右子树(right subtree)组成,而左子树和右子树分别是一颗二叉树一 . 二叉树的存储结构1.顺序存储结构:即用数组存储,2.链式存储结构:即用链表存储:struct Node{ int val; Node* left; Node* righ
2015-09-05 18:15:56 377
转载 二叉树的各种操作
版权所有,转载请注明出处,谢谢!http://blog.csdn.net/walkinginthewind/article/details/7518888树是一种比较重要的数据结构,尤其是二叉树。二叉树是一种特殊的树,在二叉树中每个节点最多有两个子节点,一般称为左子节点和右子节点(或左孩子和右孩子),并且二叉树的子树有左右之分,其次序不能任意颠倒。二叉树是递归定义的,因此,与二叉树有关
2015-09-05 15:20:38 242
转载 二叉树的遍历
转载自:数据结构之二叉树(遍历、建立、深度)1、二叉树的深度遍历 二叉树的遍历是指从根结点出发,按照某种次序依次访问二叉树的所有结点,使得每个结点被访问一次且仅被访问一次。 对于二叉树的深度遍历,有前序遍历二叉树、中序遍历二叉树、后序遍历二叉树三种形式,下面分别进行学习和介绍。1.1 二叉树的前序遍历 1)前序
2015-09-05 11:10:25 399
原创 Codeforces Round #310
题目;Codeforces Round #310的#includeusing namespace std;int a[2];int x;int main(){ int n; scanf("%d",&n); a[0]=a[1]=0; string s; cin>>s; for(int i=0;i<n;i++){ a[s
2015-09-04 17:51:18 252
原创 STL之 set的用法
Map,Set属于标准关联容器,使用了非常高效的平衡检索二叉树:红黑树,他的插入删除效率比其他序列容器高是因为不需要做内存拷贝和内存移动,而直接替换指向节点的指针即可,所以两者之间的一些用法是类似的。set集合容器:实现了红黑树的平衡二叉检索树的数据结构,插入元素时,它会自动调整二叉树的排列,把元素放到适当的位置,以保证每个子树根节点键值大于左子树所有节点的键值,小于右子树所有节点的键值;另外
2015-09-04 17:14:16 524
转载 c++ list, vector, map, set 区别与用法比较
List封装了链表,Vector封装了数组, list和vector得最主要的区别在于vector使用连续内存存储的,他支持[]运算符,而list是以链表形式实现的,不支持[]。Vector对于随机访问的速度很快,但是对于插入尤其是在头部插入元素速度很慢,在尾部插入速度很快。List对于随机访问速度慢得多,因为可能要遍历整个链表才能做到,但是对于插入就快的多了,不需要拷贝和移动数据,只需要
2015-09-04 12:27:25 572
原创 hdu 1394 最小逆序数 线段树单点增减,区间求和
Minimum Inversion NumberTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 14883 Accepted Submission(s): 9085Problem DescriptionThe
2015-09-01 19:51:01 284
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人