- 博客(13)
- 收藏
- 关注
原创 数据结构实验一____单链表操作
实验要求:1:初始化一个单链表,选择头插法和尾插法均可以。2:向链表中插入新结点,或者删除某个结点。3:打印单链表。4:清空一个单链表。代码如下:(最好自己写一遍)#include#include#include#include#includetypedef int T;//单链表的结点结构typedef struct node* Nodeptr;typed
2015-09-27 18:11:16 993
原创 UVa10340
大水题。。。。直接代码:#include#include#includeusing namespace std;char s[1000005],t[10000005];int main(){ while(scanf("%s %s",s,t)!=EOF) { int slen=strlen(s); int tlen=strlen(t
2015-09-18 18:31:58 384
原创 POJ 3630
Phone ListTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 25546 Accepted: 7745DescriptionGiven a list of phone numbers, determine if it is consistent in
2015-09-14 18:44:07 436
原创 POJ 3974
题目链接:http://poj.org/problem?id=3974 就是一水题,求最长回文字符串。回文串算法博客:http://write.blog.csdn.net/postedit?ref=toolbar(最长回文字符串_Manacher算法_(O(n))) http://blog.csdn.net/z_zhangyi
2015-09-14 16:17:21 461
转载 Trie树详解及其应用
转载于:http://blog.csdn.net/hackbuteer1/article/details/7964147一、知识简介 最近在看字符串算法了,其中字典树、AC自动机和后缀树的应用是最广泛的了,下面将会重点介绍下这几个算法的应用。 字典树(Trie)可以保存一些字符串->值的对应关系。基本上,它跟 Java 的 HashMap 功能相同,都是 key
2015-09-11 19:43:07 394
原创 最长回文字符串_Manacher算法_(O(n))
朴素算法求最长回文字符串包括奇数长的和偶数长的,求的时候都要分情况讨论,Manacher算法做了一个简单的处理,很巧妙地把奇数长度回文串与偶数长度回文串统一考虑,也就是在每个相邻的字符之间插入一个分隔符,串的首尾也要加,当然这个分隔符不能再原串中出现,一般可以用‘#’或者‘$’等字符。例如:原串:abaabb新串:#a#b#a#a#b#b#这样一来,原来的奇数长度回文串还是奇数长度,偶
2015-09-09 18:33:05 1057 1
原创 最长回文字符串
回文串定义:“回文串”是一个正读和反读都一样的字符串,比如“asddsa”或者“lovekevol”等等就是回文串。回文子串,顾名思义,即字符串中满足回文性质的子串。这里我给出通过枚举回文串的中间位置i,然后不断向外扩展,直达有字符不相同。注意,这里长度为奇数和偶数的处理方式是不一样的。下面给出代码:(这个算法并不高效,但是如果字符串较小的的话还是可以的,后面我会给出更加高效的算法)。#i
2015-09-09 10:48:13 460
原创 UVa 455 Periodic Strings
题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=396题目大意:求一个串的最小周期。因为串很小,所以暴力可过,枚举周期即可,但是周期一定能被串的长度整除。代码:#include#include#include#include
2015-09-05 21:58:26 327
原创 UVa 1225 Digit Counting
题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=3666题目大意就是把前N个整数12345678910111213......依次写在一起,数一数数字0到9各出现多少次。分析:因为n#include#include#inclu
2015-09-05 20:56:27 350
原创 UVa 340 Master-Mind Hints
题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=276题目大意: 猜数字游戏,给定答案序列和游戏者猜测的序列,统计有多少个数字位置正确(A),有多少个数字在两个序列中都出现过但位置不对(B)。优先考虑A,而且数字只有1到9,全为0则
2015-09-05 13:36:54 437
原创 UVa 10976
题目大意:输入整数k,找到所有正整数x>=y,使得1/k=1/x+1/y.分析:由1/k=1/x+1/y可以推得x=k*y/(y-k),我们只需要枚举即可,又因为x>=y,所以1/x所以k+1代码如下:#include#includeusing namespace std;const int maxn=10005;int x[maxn],y[maxn];int main(
2015-09-02 11:15:22 527
原创 UVa 725
题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=666题目大意是输入一个数n,按照从大到小的顺序输出所有如abcde/fighi=n的表达式,而a----j是0---9的一个全排列,我们只需要枚举fighi即可,不到10000个数,从1234
2015-09-01 20:28:35 492 1
原创 UVa 11059
题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=2000因为n比较小,所以可以直接暴力。但我还是wa几次,因为少了换行,还是Cf好啊。代码:#include#include#includeusing namespace std;i
2015-09-01 17:37:00 766
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人