上一页 1 ··· 22 23 24 25 26 27 28 29 30 ··· 34 下一页
摘要: 题意:有n个由小写字母的单词,要求判断是否存在某种排列使得相邻的两个单词,前一个单词末字母与后一个单词首字母相同。分析:将单词的两个字母看做节点,则一个单词可以看做一条有向边。那么题中所求的排列就等价于该有向图中是否存在欧拉路径。在判断之前,首先要确定这个图是连通的,代码中用并查集来实现。回顾一下存... 阅读全文
posted @ 2014-09-24 20:42 AOQNRMGYXLMV 阅读(291) 评论(0) 推荐(0) 编辑
摘要: 题意:给出一个二维字符数组,它代表了一棵树。然后将这棵树转化为括号表示法(以递归的形式)。分析:这道题最大的特色就是对数据的处理方式,里面用到了一个 fgets() 函数,这个函数的功能有点像c++里面的cin.getline()函数介绍:从文件结构体指针stream中读取数据,每次读取一行。读取的... 阅读全文
posted @ 2014-09-24 19:29 AOQNRMGYXLMV 阅读(254) 评论(0) 推荐(0) 编辑
摘要: 题意:经典的拓扑排序。有n个任务,然后某些任务必须安排在某些任务前面完成,输出一种满足要求的序列。分析:拓扑排序用离散里面的话来说就是将偏序关系拓展为全序关系。我们将“小于”这种关系看做一条有向边,如果得到的图是有向无环图DAG(Directed Acyclic Graph),则是存在拓扑排序的,如... 阅读全文
posted @ 2014-09-24 17:14 AOQNRMGYXLMV 阅读(299) 评论(0) 推荐(0) 编辑
摘要: 本题就是灵活运用DFS来求连通块来求解的。题意:给出一幅黑白图像,每行相邻的四个点压缩成一个十六进制的字符。然后还有题中图示的6中古老的字符,按字母表顺序输出这些字符的标号。分析:首先图像是被压缩过的,所以我们要把它解码成一个01矩阵。而且我们还要在原图像的四周加一圈白边,这样图中的白色背景都连通起... 阅读全文
posted @ 2014-09-24 05:10 AOQNRMGYXLMV 阅读(1171) 评论(0) 推荐(0) 编辑
摘要: 题意:给出一个迷宫,在迷宫的节点处,面向某个方向只能向给定的方向转弯。给出起点和终点输出迷宫的最短路径,这里指的是刚刚离开起点的时刻,所以即使起点和终点重合路径也非空。分析:用三个变量来表示状态,r,c,dir,分别代表所处的位置和朝向。在输入数据的同时,也要初始化has_edge[r][c][di... 阅读全文
posted @ 2014-09-24 02:26 AOQNRMGYXLMV 阅读(484) 评论(2) 推荐(0) 编辑
摘要: 题意:按先序方式输入一棵二叉树,节点是带权的,左孩子在父节点的左一个单位,右孩子在父节点的右一个单位,从左到右输出相同水平位置节点之和。分析:做了好几道二叉树的题,代码应该也很好理解了。这里maxn开始设了200、500都RE,后来索性开了2000,AC了紫书上面init函数最后应该加一句 retu... 阅读全文
posted @ 2014-09-22 23:50 AOQNRMGYXLMV 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 题意:一个人在x轴上,他的左右两侧都有高楼,给出楼的横坐标Xi和高度Hi还有人的位置pos,求人所能看到的天空的最大角度。分析:将建筑物和人的位置从左到右排序,对于每个位置利用栈求一次人左边建筑物的凸包,找到一个最小的角度,然后对称一下,再找一个右边的建筑物的最小角度,两个角度加起来就是答案。将人左... 阅读全文
posted @ 2014-09-22 22:28 AOQNRMGYXLMV 阅读(729) 评论(0) 推荐(0) 编辑
摘要: 题意:有一个32×32像素的黑白图片,用四分树来表示。树的四个节点从左到右分别对应右上、左上、左下、右下的四个小正方区域。然后用递归的形式给出一个字符串代表一个图像,f(full)代表该节点是黑色的,e(empty)代表该节点是白色的,p表示灰色节点,即它还有子节点。每组数据给出两幅图,求两幅图黑色... 阅读全文
posted @ 2014-09-22 18:01 AOQNRMGYXLMV 阅读(434) 评论(0) 推荐(0) 编辑
摘要: 题意:递归的方式输入一个树状天平(一个天平下面挂的不一定是砝码还可能是一个子天平),判断这个天平是否能满足平衡条件,即W1 * D1 == W2 * D2.递归的方式处理输入数据感觉很巧妙,我虽然能理解,但自己是写不出来的。这里的参数是传引用,所以是在递归回来的时候才会赋值的。 1 //#defin... 阅读全文
posted @ 2014-09-21 22:56 AOQNRMGYXLMV 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 题意:给出一棵由中序遍历和后序遍历确定的点带权的二叉树。然后找出一个根节点到叶子节点权值之和最小(如果相等选叶子节点权值最小的),输出最佳方案的叶子节点的权值。二叉树有三种递归的遍历方式:先序遍历,先父节点 然后左孩子 最后右孩子中序遍历,先左孩子 然后父节点 最后父节点后序遍历,先左孩子 然后右孩... 阅读全文
posted @ 2014-09-21 21:36 AOQNRMGYXLMV 阅读(191) 评论(0) 推荐(0) 编辑
摘要: 题意:输入一颗二叉树,按照(左右左右, 节点的值)的格式。然后从上到下从左到右依次输出各个节点的值,如果一个节点没有赋值或者多次赋值,则输出“not complete”一、指针方式实现二叉树首先定义一个结构体,然后定义一个结构体指针root,作为整棵树的根节点。如果需要用到左右节点则申请一个空间,也... 阅读全文
posted @ 2014-09-21 07:49 AOQNRMGYXLMV 阅读(367) 评论(0) 推荐(0) 编辑
摘要: 题意:模拟一个文本编辑器,可以输入字母数字下划线,如果遇到'['则认为是Home键,如果是']'则认作End键。问最终屏幕上显示的结果是什么字符串。分析:如果在数组用大量的移动字符必然很耗时。所以next数组表示显示屏中s[i]右边的字符编号,变量cur模拟光标,即当前光标位于s[cur]的右边。变... 阅读全文
posted @ 2014-09-18 21:06 AOQNRMGYXLMV 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 练习一下stack的使用,还有要注意一下输入的格式,看了好长时间没懂。 1 //#define LOCAL 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 8 const int maxn = 100... 阅读全文
posted @ 2014-09-17 17:27 AOQNRMGYXLMV 阅读(238) 评论(0) 推荐(0) 编辑
摘要: 题意:有n个员工,每个员工完成一件A任务和一件B任务的时间给出,问要完成x件A任务y件B任务所需的最短时间是多少思路:DP + 二分我也是第一次见到,这个我只能说太难想了,根本想不到。dp[i][j]表示在t时间内前i个人完成j件A任务后所能完成B任务的最大数量。代码中还有一些注释。 1 //#de... 阅读全文
posted @ 2014-09-16 22:36 AOQNRMGYXLMV 阅读(217) 评论(0) 推荐(0) 编辑
摘要: 题意:有W、E两个跑道,在每个时刻每个跑道的飞机都从0开始编号,而且每个时刻都有Wi和Ei架飞机到达这两个跑道。而且每个时刻只能选择一个跑道的一架飞机起飞。问如何选择才能使得飞机的最大编号最小。(每个时刻算编号时是在飞机起飞之前的)思路:又是一个最大值最小的问题,可以用二分,不过怎么二分我没有想到。... 阅读全文
posted @ 2014-09-16 20:34 AOQNRMGYXLMV 阅读(290) 评论(0) 推荐(0) 编辑
摘要: 今天的教训:做题要用大块的时间来做,上午做一下,做题做到一半就去忙别的事,那么后面再做的时候就无限CE,WA了。因为你很难或者需要很长时间来找回当时的思路。题意:就像套瓷娃娃一样,有n个包,大小可能一样可能不一样,而且小的包只能被严格比它大的包包裹上。问如何打包,才能使总的包数最小,在这个前提下,还... 阅读全文
posted @ 2014-09-14 19:24 AOQNRMGYXLMV 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 为了寻找等效旋转操作,我们任选两个点P0和Q0,分别绕这n个点旋转一定的角度后最终得到Pn和Qn然后已知:P0和Pn共圆,Q0和Qn共圆。所以要找的等效旋转点就是这两个线段的垂直平分线交点O。等效的角度的计算,可以利用已知的等腰三角形(这里有两个)△P0PnR,做一条垂线(三线合一的性质),再利用反... 阅读全文
posted @ 2014-09-13 22:31 AOQNRMGYXLMV 阅读(358) 评论(0) 推荐(0) 编辑
摘要: 在参加这场网络赛之前,我还在为暑假刷的一百多道水题而洋洋自得。直到我开始做题的时候,才回想起那最初支配我的恐惧(借用的进击的巨人的台词,这句有点恶搞了)。十道题,五个小时,我们几个人也就解决了两道题。第二道计算几何的那道题是我们一番讨论才A过去的,虽然我几乎没有做过计算几何这类的题目,公式都是自己先... 阅读全文
posted @ 2014-09-13 18:22 AOQNRMGYXLMV 阅读(178) 评论(1) 推荐(0) 编辑
摘要: 这道题真是WA得我心力交瘁,好讨厌的感觉啊!简直木有写题解的心情了题意:n×n的棋盘里,放置n个车,使得任意两车不同行且不同列,且第i个车必须放在给定的第i个矩形范围内。输出一种方案,即每个车的坐标,无解的话则输出“IMPOSSIBLE”行和列是独立的,所以可以分开处理,将二维的转化成了一维区间上的... 阅读全文
posted @ 2014-09-13 08:33 AOQNRMGYXLMV 阅读(174) 评论(0) 推荐(0) 编辑
摘要: 题意:有宽度相同的水平的n个旗门,水平(纵坐标严格递增)滑行的最大速度为Vh(水平速度可以任意调节)。然后还有S双滑雪板,每双滑雪板的垂直速度一定。然后求能通过的滑板鞋的最大速度。分析:显然,滑雪板的速度越小越容易通过所有的旗门。然后二分找出这个能通过旗门的最大值,最后在滑雪板里面找出这个范围的最大... 阅读全文
posted @ 2014-09-11 18:53 AOQNRMGYXLMV 阅读(286) 评论(0) 推荐(0) 编辑
上一页 1 ··· 22 23 24 25 26 27 28 29 30 ··· 34 下一页