ACM算法
文章平均质量分 75
SDUT_wdc
这个作者很懒,什么都没留下…
展开
-
POJ3687Labeling Balls 解题思路加感受
Labeling BallsTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 12767 Accepted: 3672DescriptionWindy has N balls of distinct weights from 1 unit to N un原创 2015-12-18 18:13:18 · 598 阅读 · 0 评论 -
prim 求最小生成树
图结构练习——最小生成树 Time Limit: 1000MS Memory limit: 65536K 题目描述 有n个城市,其中有些城市之间可以修建公路,修建不同的公路费用是不同的。现在我们想知道,最少花多少钱修公路可以将所有的城市连在一起,使在任意一城市出发,可以到达其他任意的城市。 输入 输入包含多组数据,格式如下。第一行包括两个整数n原创 2016-03-28 21:11:25 · 394 阅读 · 0 评论 -
经典八皇后问题
问题描述:八皇后问题是十九世纪著名数学家高斯于1850年提出的。问题是:在8*8的棋盘上摆放8个皇后,使其不能互相攻击,即任意的两个皇后不能处在同意行,同一列,或同意斜线上。可以把八皇后问题拓展为n皇后问题,即在n*n的棋盘上摆放n个皇后,使其任意两个皇后都不能处于同一行、同一列或同一斜线上。解题心得:八皇后问题考察的回溯深搜,如果一个位置满足要求,做上标记后进入下一行,如果这一整原创 2016-03-29 20:11:31 · 1541 阅读 · 0 评论 -
poj1611 并查集
The SuspectsTime Limit: 1000MS Memory Limit: 20000KTotal Submissions: 30559 Accepted: 14854DescriptionSevere acute respiratory syndrome (SARS), an atypical pneumoni原创 2016-03-30 21:18:59 · 417 阅读 · 0 评论 -
堆排序 题解
排序Time Limit: 1000ms Memory limit: 32678K 有疑问?点这里^_^题目描述 给你N(N输入 输入数据第一行是一个正整数N,第二行有N个整数。输出 输出一行,从小到大输出这N个数,中间用空格隔开。示例输入51 4 3 2 5示例输出1 2 3 4原创 2016-03-31 21:32:52 · 1191 阅读 · 0 评论 -
复杂度为log(m+n)下求有序数组A和B有序合并之后第k小的数
原题是leetcode上的第四题https://leetcode.com/problems/median-of-two-sorted-arrays/,我在这里整理成了OJ题目的类型,由用户输入两个数组,然后输出合并后的中间值。输入: 3 4 1 2 3 2 3 4 5输出: 3解决方法的核心是将原问题转变成一个寻找第k小数的问题(假设两个原序列升序排列)原创 2016-04-04 15:39:34 · 2036 阅读 · 0 评论 -
Manacher算法
Manacher算法是查找一个字符串的最长回文子串的线性算法。在介绍算法之前,首先介绍一下什么是回文串,所谓回文串,简单来说就是正着读和反着读都是一样的字符串,比如abba,noon等等,一个字符串的最长回文子串即为这个字符串的子串中,是回文串的最长的那个。计算字符串的最长回文字串最简单的算法就是枚举该字符串的每一个子串,并且判断这个子串是否为回文串,这个算法的时间复杂度为O(n^3)的,转载 2016-04-05 20:56:23 · 369 阅读 · 0 评论 -
Manacher's ALGORITHM: O(n)时间求字符串的最长回文子串
这个算法看了三天,终于理解了,在这里记录一下自己的思路,免得以后忘了又要想很久- -.首先用一个非常巧妙的方式,将所有可能的奇数/偶数长度的回文子串都转换成了奇数长度:在每个字符的两边都插入一个特殊的符号。比如 abba 变成 #a#b#b#a#, aba变成 #a#b#a#。 为了进一步减少编码的复杂度,可以在字符串的开始加入另一个特殊字符,这样就不用特殊处理越界问题,比如$#a#b#a转载 2016-04-06 17:48:42 · 383 阅读 · 0 评论 -
简单01背包
I样Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^题目描述这是个什么问题呢?DP,贪心,数据结构,图论,数论还是计算几何?管他呢,反正胖巨巨都会,虽然胖巨巨走得早。现在有n个数Xi,现在你要把这些数分成两组A,B,使得abs(sum(A)-sum(B))尽可能的小,并且每个Xi必须且只能原创 2016-04-21 13:53:58 · 410 阅读 · 0 评论 -
最短编辑距离
描述:设A和B是2个字符串。要用最少的字符操作将字符串A转换为字符串B。这里所说的字符操作包括:(1)删除一个字符;(2)插入一个字符;(3)将一个字符改为另一个字符。将字符串A变换为字符串B所用的最少字符操作数称为字符串A到B的编辑距离,记为d(A,B)。试设计一个有效算法,对任给的2个字符串A和B,计算出它们的编辑距离d(A,B)。要求:输入:第1原创 2016-05-07 21:51:02 · 1072 阅读 · 0 评论 -
查找练习 hash
查找练习 hash——出现过的数字Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^题目描述有一个数据字典,里面存有n个数字(n 输入 输入数据只有一组!第一行包含两个整数n m,分别代表字典中数字的个数和要查询的数字的个数。接着n行代表字典中的n个数字。最后m表示要查询的数字。原创 2016-03-27 20:24:44 · 391 阅读 · 0 评论 -
KMP 题解
学密码学一定得学程序Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^题目描述曾经,ZYJ同学非常喜欢密码学。有一天,他发现了一个很长很长的字符串S1。他很好奇那代表着什么,于是神奇的WL给了他另一个字符串S2。但是很不幸的是,WL忘记跟他说是什么意思了。这个时候,ZYJ不得不求助与伟大的ZP。ZP笑了笑说,这个很原创 2016-03-22 18:32:39 · 489 阅读 · 0 评论 -
POJ 2488 A Knight's Journey题解
A Knight's JourneyTime Limit:1000MS Memory Limit:65536KB 64bit IO Format:%I64d & %I64uSubmitStatusPracticePOJ 2488Appoint description:DescriptionBackgroundThe knight is原创 2016-01-21 17:46:12 · 656 阅读 · 0 评论 -
poj3009Curling 2.0 题解
Curling 2.0Time Limit:1000MS Memory Limit:65536KB 64bit IO Format:%I64d & %I64uSubmitStatusPracticePOJ 3009Appoint description:DescriptionOn Planet MM-21, after their O原创 2016-01-21 18:40:44 · 718 阅读 · 0 评论 -
poj2251 Dungeon Master (广度搜索)
Dungeon MasterTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 23073 Accepted: 8981DescriptionYou are trapped in a 3D dungeon and need to find the quickest原创 2016-01-24 13:06:09 · 813 阅读 · 0 评论 -
POJ 1860 Currency Exchange 解题思路
Currency ExchangeTime Limit: 1000MS Memory Limit: 30000KTotal Submissions: 23989 Accepted: 8701DescriptionSeveral currency exchange points are working in our city.原创 2015-12-06 12:27:48 · 957 阅读 · 0 评论 -
poj3126 Prime Path (广搜) 题解
Prime PathTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 15238 Accepted: 8575DescriptionThe ministers of the cabinet were quite upset by the message from原创 2016-01-27 08:37:33 · 656 阅读 · 0 评论 -
poj1426 Find The Multiple 题解
Find The MultipleTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 23557 Accepted: 9723 Special JudgeDescriptionGiven a positive integer n, write a prog原创 2016-01-27 08:48:50 · 829 阅读 · 0 评论 -
二叉树 题解
数据结构实验之二叉树的建立与遍历Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^题目描述 已知一个按先序序列输入的字符序列,如abc,,de,g,,f,,,(其中逗号表示空节点)。请建立二叉树并按中序和后序方式遍历二叉树,最后求出叶子节点个数和二叉树深度。输入 输入一个长度小于50个字符的原创 2016-03-25 20:23:07 · 394 阅读 · 0 评论 -
二分查找 题解
数据结构上机实验之二分查找Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^题目描述 在一个递增的序列里,查找元素是否存在,若存在输出YES,不存在输出NO.输入 本题多组数据,首先输入一个数字n(n>=100000),然后输入n个数,数据保证数列递增,然后再输入一个查找数字。输出 若存在输出YES,不原创 2016-03-24 20:20:43 · 792 阅读 · 0 评论 -
快速排序 题解
排序Time Limit: 1000ms Memory limit: 32678K 有疑问?点这里^_^题目描述 给你N(N输入 输入数据第一行是一个正整数N,第二行有N个整数。输出 输出一行,从小到大输出这N个数,中间用空格隔开。示例输入51 4 3 2 5示例输出1 2 3 4原创 2016-03-23 20:00:38 · 757 阅读 · 0 评论 -
动态规划解最长公共子序列问题
#include #includeusing namespace std;int main(){ int i,j,len=1,last; int map[110][110]; string s1,s2; cin>>s1>>s2; int len1=s1.length(); int len2=s2.length();原创 2016-04-18 16:53:56 · 587 阅读 · 0 评论