随笔分类 -  ACM_数据结构

摘要:平衡树都能做。 阅读全文
posted @ 2016-03-25 12:36 chenhuan001 阅读(573) 评论(0) 推荐(0) 编辑
摘要:这两题比赛做的时候各种卡,太久没有写过这种类型的题目了。各种细节想不清楚。 赛后看下网上大部分题解的代码,发现大部分都是直接用TRIE+暴力直接搞的--!,随便找了份代码发现有些数据这种做法是超时的,比如n=m=1,然后下面两行长度为100000的全为a的字符串。明显直接暴力DFS复杂度为n*n.比... 阅读全文
posted @ 2016-01-11 16:38 chenhuan001 阅读(314) 评论(0) 推荐(0) 编辑
摘要:上图论课的时候无意之间看到了这个,然后花了几天的时间学习了下,接下来做一个总结。一般斯坦纳树问题是指(来自百度百科):斯坦纳树问题是组合优化问题,与最小生成树相似,是最短网络的一种。最小生成树是在给定的点集和边中寻求最短网络使所有点连通。而最小斯坦纳树允许在给定点外增加额外的点,使生成的最短网络开销... 阅读全文
posted @ 2015-11-13 15:46 chenhuan001 阅读(1116) 评论(0) 推荐(0) 编辑
摘要:#define N 55//所有点的个数 #define K 10//SteinerTree 最大顶点数,必须精确 #define INF 10000000 //SteinerTree 邻接矩阵模板。(稠密图)时间复杂度 O(N*2^K*(2^K+N)) int dp[(1<<K)+1][N]; int STV[N]; int SteinerTreeDP(int mat[N][N],int ... 阅读全文
posted @ 2015-11-12 20:42 chenhuan001 阅读(501) 评论(0) 推荐(0) 编辑
摘要:是一种hash方法,其实核心思想就是,将一个字符串通过多个普通hash函数映射到hash表上,然后再进行检索的时候同样计算hash函数,如果全都都hash表上出现过,那么说明有极大的可能出现过,如果没有出现那么一定没有出现过。可以通过公式计算采取多少个普通hash函数和多大映射空间使正确率变得最低。... 阅读全文
posted @ 2015-10-16 16:28 chenhuan001 阅读(596) 评论(0) 推荐(0) 编辑
摘要:矩阵乘法来进行所有路径的运算, 线段树来查询修改。 关键还是矩阵乘法的结合律。Harry And Math TeacherTime Limit: 5000/3000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Subm... 阅读全文
posted @ 2014-10-21 23:21 chenhuan001 阅读(453) 评论(0) 推荐(0) 编辑
摘要:后缀数组倍增算法超时,听说用3DC可以勉强过,不愿写了,直接用hash+二分求出log(n)的时间查询两个字符串之间的任意两个位置的最长前缀.我自己在想hash的时候一直在考虑hash成数值时MOD取多大,如果取10^18的话,那么两数相乘个就超LL了,但是取10^9的话又怕出现重复的可能大.后面才... 阅读全文
posted @ 2014-10-16 15:02 chenhuan001 阅读(323) 评论(0) 推荐(0) 编辑
摘要:算是后缀数组的入门题吧。 思路无比简单,要是直接套模板的话应该很容易秒掉。关于后缀数组看高中神犇的论文就可以学会了算法合集之《后缀数组——处理字符串的有力工具》话说这题暴力是可以过了,但是我们在做多校的时候就是用暴力过的,当时还不知道什么是后缀数组。。。靠着概念纯手敲了几个小时,把建SA,求heig... 阅读全文
posted @ 2014-10-10 21:28 chenhuan001 阅读(495) 评论(0) 推荐(0) 编辑
摘要:用kmp的方法写了好久,发现以我的想法用kmp不仅难以实现而且无法证明正确性。 于是还是使用扩展kmp。。。Best RewardTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 378Accepted Submission(s): 151Problem DescriptionAfter an uphill battle, General Li won a great victory. Now the head of state decide t 阅读全文
posted @ 2013-07-29 21:46 chenhuan001 阅读(275) 评论(0) 推荐(0) 编辑
摘要:看了扩展KMP的思路,然后来写这题,没有看别人怎么写的,自己写的想死,各种纠结的小细节,而且感觉这个东西自己想是很难想到。终于知找到一道我用kmp无法解决的题目了,只知道用扩展kmp可以搞定。Revolving DigitsTime Limit: 3000/1000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 1111Accepted Submission(s): 319Problem DescriptionOne day Silence is interested in revol 阅读全文
posted @ 2013-07-29 09:40 chenhuan001 阅读(438) 评论(0) 推荐(0) 编辑
摘要:不会,题意还是不理解,我感觉选的这个矩形没有一点要按同一个规则摆放吧。 如果是这样真心感觉做不出来。如果不是这样就是简单的kmp。 我是为了练习扩展kmp才来看这题的,结果,。。。貌似扩展kmp也可以做的样子. 但是kmp的做法更好理解吧Milking GridTime Limit:3000MSMemory Limit:65536KTotal Submissions:4859Accepted:2020DescriptionEvery morning when they are milked, the Farmer John's cows form a rectangular grid 阅读全文
posted @ 2013-07-28 16:19 chenhuan001 阅读(264) 评论(0) 推荐(0) 编辑
摘要:还没有学过RMQ,所以只能用会的单调队列做。Bob’s RaceTime Limit: 5000/2000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1358Accepted Submission(s): 441Problem DescriptionBob wants to hold a race to encourage people to do sports. He has got trouble in choosing the route. There are N house 阅读全文
posted @ 2013-07-12 10:55 chenhuan001 阅读(318) 评论(0) 推荐(0) 编辑
摘要:处理题目中给的日期,然后用单调队列维护Alice's mooncake shopTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1925Accepted Submission(s): 468Problem DescriptionThe Mid-Autumn Festival, also known as the Moon Festival or Zhongqiu Festival is a popular harvest festiva 阅读全文
posted @ 2013-07-11 23:39 chenhuan001 阅读(394) 评论(0) 推荐(0) 编辑
摘要:想了半天,写了半天,多次TLE,WA后终于AC。。。 其实只要注意一些问题这个题目思路还是很简单的。1. 时间是连续走的,从文中“rotating every second”(注意rotate 是加了 ing 的) ,表示每秒钟都在不停的走。这个问题坑了我很久, 一开始用一秒一秒模拟, 然后90 时就为6.255。。。 这个是必须错的,然后就知道了不是一秒一秒动的,然后天真的以为可以将一秒分成1000ms来精确,可是出题人怎么可能让我得逞, 果断TLE,发现就是分成10ms也是TLE。。。 无奈只有想新方法。。既然不能离散成一秒一秒,那么就连续的一起求, 于是就想到了看秒针走一圈中有多少路程是 阅读全文
posted @ 2013-06-04 22:08 chenhuan001 阅读(204) 评论(0) 推荐(0) 编辑
摘要:KMP基础题,一开始思路没有理清楚导致写了好久。。。 悲催。要搞清楚题意,题目所围绕的是KMP算法中对自身串进行匹配的那一步假设有两个串 S,T , 我们要求的是S是否存在T中。其中我用的save[i],表示在i位置的后save[j]-1和S串的前save[i]-1个相等, 然后根据这个性质就可以解决String-Matching AutomataTime Limit:1000MSMemory Limit:65536KTotal Submissions:113Accepted:70DescriptionThe finite state automaton (FSA) is an importa 阅读全文
posted @ 2013-05-20 23:05 chenhuan001 阅读(231) 评论(0) 推荐(0) 编辑
摘要:以前看过KMP, 但是今天没有看资料, 自己想的,完全想通,感叹KMP的奇妙。Number SequenceTime Limit: 10000/5000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 7750Accepted Submission(s): 3532Problem DescriptionGiven two sequences of numbers : a[1], a[2], ...... , a[N], and b[1], b[2], ...... , b[M] (1 & 阅读全文
posted @ 2013-05-19 02:19 chenhuan001 阅读(192) 评论(0) 推荐(0) 编辑
摘要:挺有意思的题。思路不难, 用hash判重, 但是要坑人的是一开始怎么将每串序列按照同一规律排列。比如2 1 2 1 1 2 1 1 2 2 1 2怎么转化为 1 1 2 2 1 2 ,也就是转化为字典序最小, 最后没有办法只有枚举, 3000+ms 险过.Snowflake Snow SnowflakesTime Limit:4000MSMemory Limit:65536KTotal Submissions:26254Accepted:6900DescriptionYou may have heard that no two snowflakes are alike. Your task i 阅读全文
posted @ 2013-05-15 00:05 chenhuan001 阅读(206) 评论(0) 推荐(0) 编辑
摘要:int g[15]={0,2,7,5,30,169,441,1872,7632,1740,93313,459901,1358657,2504881};打表比较好吧,13的数据量。如果用循环链表模拟暴力要跑很多时间才能搞定。 根据这题只看前k个和后k个。 第一次到s%2*k, 那么第二次则到 (s+s%(2*k-1))%(2*k-1) ,如此递推只需k的时间就可以A了。JosephTime Limit:1000MSMemory Limit:10000KTotal Submissions:43659Accepted:16425DescriptionThe Joseph's problem 阅读全文
posted @ 2013-04-29 14:38 chenhuan001 阅读(221) 评论(0) 推荐(0) 编辑
摘要:比较基础的约瑟夫环记住约瑟夫环的递推的公式 就行了假设是从0-n-1, 从0开始的第k个人f[1]=0;f[i]=(f[i-1]+k+1)%i (i>1)Eeny Meeny MooTime Limit:1000MSMemory Limit:65536KTotal Submissions:2927Accepted:2013DescriptionSurely you have made the experience that when too many people use the Internet simultaneously, the net becomes very, very sl 阅读全文
posted @ 2013-04-28 21:55 chenhuan001 阅读(274) 评论(0) 推荐(0) 编辑
摘要:坑爹的,这题还要打表才能过, 10^5组测试数据,不打表就基本的输入输出就要花不少时间了,所以下次要注意如此大的数据量的时候要考虑打表...题意就不说了, 我的解法是求出n个人的需要多少次(cnt)才能将所有人都除去(除了1- (K-1) ), 然后找出比n小的人数中 也恰需要cnt次的人数。 然后这个就是最后一个人可以一开始先把 k个人 的所有情况都存下来, 然后直接调用就行了杀人游戏Time Limit: 3000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1298A 阅读全文
posted @ 2013-04-28 20:51 chenhuan001 阅读(541) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示