自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

GameRoad

立志做一名懂美术的程序员O(∩_∩)O

  • 博客(19)
  • 收藏
  • 关注

原创 学霸的迷宫

思路:广搜,记录路径,反向输出#include #include #include #include using namespace std;int mp[505][505];char path[505][505];int vis[505][505];struct node{ int step,x,y;}; int n,m,ans;queue s;

2017-02-28 16:18:42 470

原创 2n皇后问题

思路:在白皇后处理好了之后,再处理黑皇后。。满满的搜索#include #include #include #include using namespace std;int mp[105][105];int black[105];int white[105];int vis[105][105];int ans;int n;bool judge(int x,

2017-02-27 21:00:48 277

原创 1093. Count PAT's (25)

思路:从后向前,记录T的个数,当遇到A字母时候,可以组成t个 "at"记录为pid ,当遇到P字母时候,可以利用之前pid个"at"组成pid个"pat#include #include #include #include #include #include using namespace std;typedef long long ll;const int mo

2017-02-25 16:37:50 201

原创 1119. Pre- and Post-order Traversals (30)

思路: 对于前序来说 根--左-- 右。 后序 左--右--根。 所以可以用后序分割前序,从而确立树。至于一直说只有拥有了中序才可以唯一确定树是因为 中序可以判断左右子树的关系。但是如果没有的话,如果只有左子树或者只有右子树是无法判断。因此用这个方法来确定是否唯一自己写的时候递归写乱了,参考的http://blog.csdn.net/liuchuo/article/details/52

2017-02-25 12:44:04 224

原创 D. Cloud of Hashtags

题意:保证是一组非递减的字符串。只可以删除连续的后缀思路:从后往前减少字符。暴力就好了。挺水的。做完C去看动漫了#include #include #include #include #include const int maxn=1e6+5;using namespace std;string str[maxn];int n ;int a[maxn

2017-02-24 21:57:12 301

原创 C - Alyona and Spreadsheet

题意:给出一个矩阵,询问是否有一列从l->r行的顺序是非递减的。思路:处理没一列,对于当前数字可以扩展到该列的哪一位,直到不满足非递减的条件,之后用一个矩阵存起来。注意:之后还需要处理当前行最大的扩展行。没写这步,竟然TLE100真是.#include #include #include #include #include #include #inclu

2017-02-24 21:21:41 386

原创 蓝桥历届试题-地宫取宝DP

自己做的时候从二维->三维->四维,才把变量所需要的值全部搞定,还要注意一下宝物值有0,所以初始应为-1;思路:对于每一个位置来说,只能对他的下面和右面产生影响, 因此可以将每种变量关系逐步更新到下面和右面,具体看代码 #include #include #include #include #include #include #include using namespac

2017-02-24 13:51:52 319

原创 国王的烦恼

即便之前知道这题是并查集,而且自己还觉得并查集学的不错,还是没做出来。还以为是带权的,搞了半天。确实很有趣思路:对于此题,只需要从天数大到小判断,并连接图中节点,判断是否在某条边时,连接了两个不同的连通分支,并且在一天最多答案+1。第一次做到排序+并查集。一直以为并查集对于顺序毫无关系#include #include #include #include #incl

2017-02-23 20:30:03 436

原创 1268 和为K的组合

#include #include #include #include #include #include #include using namespace std;const int maxn=1000000+5;typedef long long ll;int vis[maxn];int a[maxn];int n,k;int flag=0;int dfs(int

2017-02-13 21:15:29 294

原创 1267 4个数和为0

之前做过两个数 三个数和为K的情况,两个数字可以用指针的方法,而三个数字就需要用二分了。此题也是一样。将4个数字和位K的情况,归为两个数字和K的情况,做法为: 将数字两两相加存入数组,并且记录下是由第几个数字和第几个数字相加而来。这样就标称了两个数字的的情况。其他博客里写了种指针的情况,其实就是按照两个数字和为K的情况下指针的做法。自然会比二分快一些#include #i

2017-02-13 18:10:29 423

原创 1163 . 最高的奖励

第一次知道并查集可以这么用思路:对于5W个数据 可以类似线段树一样,将其点作为解决途径,虽然数据范围大,但是数据量并不大。在并查集时只需要将 任务在某一时刻被解决作为入手途径。对于第一次到达的点 Fx==x-1 逐步更新到0即可#include #include #include #include #include #include #include using

2017-02-12 17:04:51 313

原创 1163 最高的奖励 优先队列

思路:按时间顺序排序,因为是递增+1的,所以在优先队列中就是元素个数,对于时间超过个数的可以直接做完,否则从队列中选取一个价值最小的将之替换#include #include #include #include #include #include #include using namespace std;const int maxn=50000+5;typedef

2017-02-12 14:26:06 200

原创 1127 最短的包含字符串

思路:初始第一遍确定顺序,之后从前向后一次缩减范围。#include #include #include #include using namespace std;typedef long long ll;typedef double db;const int maxn = 100005;char a[maxn];int table[105];int main

2017-02-06 20:55:39 283

原创 51nod-1098 最小方差

思路:把方差展开,前缀记录。因为方差在数字接近时取最小。排序即可注意:交了好多次才过,初始的数字一定要大1e9都小,注意double 的精确度。#include #include #include #include using namespace std;typedef long long ll;typedef double db;const int maxn =

2017-02-06 18:57:58 316

原创 758C - Unfair Poll

题意:老师按顺序点名,询问提问次数最多,最少的和x,y位置的学生被提问的次数思路:每次以m(2n-2)为一轮,开始二分枚举。之后剩下的暴力枚举#include #include #include #include using namespace std;typedef unsigned long long ll;ll mp[105][105];int main

2017-02-06 04:18:36 248

原创 762C - Two strings

题意:给出a.b两个字符串,要求删除b中某段连续的子串使得得到的b串是a中的子串。询问满足条件的最长的a的子串思路:在网上看了好半天各位的博客,才知道二分竟然能这么用。真是厉害了!将b的删除问题转化:b的前缀   + 删除部分长度+ b的后缀部分预处理:b的前缀串在a中需要的长度b的后缀串在a中需要的长度二分:删除部分的长度(因为二分只能处理线性有序问题),此题无论

2017-02-06 03:49:58 227

原创 Timofey and a tree

题意:给出一棵树,N-1条边 每个边的颜色C[i]。询问是否有一个节点作为根,他所有子树的颜色都相同。比赛结束好久了,才补题。心酸。思路:当时没写出来。也是想的是并查集分类,但是搞了90分钟没出。记录下各位博客学的两种比较好的方法方法一:对于两端颜色相同的边不予以判定,而对于颜色不同的边,必定是一个端点作为根进行整合。那么只需要记录下有多少个颜色不同的特殊边,并且对于每种特

2017-02-04 23:34:06 275

原创 B - Timofey and cubes

题意:对于给定n的序列。开始交换,每次交换从两端交换思路:对于位置在奇数位的会交换,而偶数位的不会 #include #include #include #include using namespace std;const int inf=0x3f3f3f3f;int a[1000005];int main(){ int n; cin>>n;

2017-02-03 12:08:13 264

原创 A - Taymyr is calling you

题意:给出a,b,问区间1~L上有多少个ab的公倍数 #include #include #include #include using namespace std;const int inf=0x3f3f3f3f;int a[10005];int main(){ int n,m,z; cin>>n>>m>>z; for(int i=n;i<=z;i

2017-02-03 12:07:01 344

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除