Je vole

博客移步至:https://blog.baoyukun.win

Android传感器计步器

暑假里做了一个安卓计步器,不依靠GPS,也不用联网,只依靠重力加速度传感器和三轴磁力传感器,就可以实现记录步数和记录行走轨迹。我还加入了摇一摇切歌的功能,享受运动的乐趣~~ 这个项目只用了三天时间(作为自己的第一个安卓作品,我觉得还是很快的~~),当时完全是被deadline给逼出来的。老师对这个...

2016-02-28 16:58:58

阅读数 3278

评论数 0

练习:最长回文子串(Manacher算法)

【例题】 点击这里 【思路】 最长回文子串是个非常经典的问题,Manacher算法是解决它的O(n)优秀算法。 该算法提出在字符串相邻字符间插入字符,从而在中心拓展时无需考虑串长度的奇偶性(显然,对于任意长度为n的串,有n-1个间隔,故而补全串长度为2n-1,总为奇数)。 举个例子:原串str为a...

2016-02-10 17:33:44

阅读数 330

评论数 0

练习:KMP(字符串模式匹配问题)

KMP算法是模式串匹配算法中最为著名的一个,其他的还有BM、Horspool、Sunday等。 这篇文章,对各种算法有比较全面的介绍。但是,其中代码尚存在问题,不能照搬,重在理解各种算法思想。 KMP算法应用最多(至少在ACM竞赛中出现频率很高),因此需要深入理解,熟练掌握。其O(n+m)的时...

2016-02-03 22:49:26

阅读数 595

评论数 0

poj_2250 Compromise(输出最长公共子序列)

【题目】 点击这里 【思路】 最长公共子序列的元素变成了单词,算法依然相同。最后输出子序列时,只需根据ans数组从后往前索引,遇到序列元素时就将其入栈,最后出栈输出。 【代码】 #include #include #define size 150 #define max(x,y) x...

2016-02-11 15:44:33

阅读数 236

评论数 0

poj_1458 Common Subsequence(最长公共子序列)

【题目】 点击这里 【思路】 经典的LCS问题,动态规划即可,状态转移方程: 【代码】 #include #include #define size 220 #define max(x,y) x>y? x:y int main() { char s[size],t[size];...

2016-02-11 15:21:51

阅读数 200

评论数 0

poj_3974 Palindrome(最长回文子串)

【题目】 点击这里 【思路】 直接运用Manacher算法。 【代码】 #include #include #define maxSize 1000005 #define min(x,y) (x<y)? x:y char str[maxSize], s[maxSize*2+3...

2016-02-10 23:36:46

阅读数 243

评论数 0

poj_2506 Tiling(高精度加法)

【题目】 点击这里 【思路】 很容易想到递推 f[n]=f[n-1]+2*f[n-2]。之后的事情,就是高精度加法了。 【代码】 #include int n, total, ans[251][80]; void init() { ans[0][0]=1; ans[0][1...

2016-02-10 12:18:25

阅读数 161

评论数 0

hihoCoder_W84 Lucky Substrings(基础做法)

【题目】 点击这里 【思路】 分两步走,1. 找出所有斐波那契子串;2. 按字典序无重复地输出。 第一步可以枚举子串,由于规模比较小,O(n^2)的算法都可以接受。O(n^3)优化至O(n^2)的方法是,从前往后枚举子串,[i…j+1]可以利用[i…j]的结果。 第二步可以选择排序,然后无重复输出...

2016-02-06 23:57:25

阅读数 154

评论数 0

poj_3450 Corporate Identity(KMP+枚举)

【题目】 点击这里 【思路】 同poj_3080 Blue Jeans,依然秒AC(1100ms 【代码】 #include #include char a[4002][201]; int next[202]; void getNext(char t[], int x, int...

2016-02-06 18:04:50

阅读数 170

评论数 0

poj_3080 Blue Jeans(KMP应用)

【题目】 点击这里 【思路】 按照长度从大到小的顺序,枚举第一个串的子串,每次都尝试将此子串与其他串匹配,直至所有匹配都成功。注意最后输出的是,长度尽可能大且字典序最小的子串。 原本以为时间上可能有压力,没想到KMP算法效率非常高,枚举+KMP结果秒AC,O(∩_∩)O哈哈~ 【...

2016-02-06 15:32:50

阅读数 229

评论数 0

poj_1008 Maya Calendar(模拟题)

【题目】 点击这里 【思路】 模拟题,要求速度,注意细节:strcmp(S1,S2)==0;(表达式)? x:y 【代码】 #include #include int main() { long int n,i,j; scanf("%d",&am...

2016-02-06 13:01:15

阅读数 208

评论数 0

poj_2001 Shortest Prefixes(Trie树应用)

【题目】 点击这里 【思路】 Trie树基本应用,先建树,而后对每个字符串查询,在查询过程中,取第一次碰到的尾缀单词数为1的结点之前的字符串作为前缀,如果查询完都没有,则取本身为前缀。 【代码】 #include #include #include typedef struct nod...

2016-02-05 23:51:06

阅读数 216

评论数 0

poj_3630 Phone List(Trie树练习)

【题目】 点击这里 【思路】 基本的Trie树应用,作为回顾练习。判断是否有重号的依据:在建树过程中,找到重复串或者在叶子节点继续插入,当且仅当有重号。 【代码】 #include #include typedef struct node { char c; int...

2016-02-05 23:44:51

阅读数 226

评论数 0

poj_2752 Seek the Name, Seek the Fame(KMP:寻找所有公共前缀后缀)

【题目描述】 The little cat is so famous, that many couples tramp over hill and dale to Byteland, and asked the little cat to give names to their newly-bo...

2016-02-04 20:32:08

阅读数 251

评论数 0

poj_2406 Power Strings(KMP求周期子串)

【题目描述】 Given two strings a and b we define a*b to be their concatenation. For example, if a = "abc" and b = "def" then a*b = &qu...

2016-02-04 18:36:23

阅读数 203

评论数 0

poj_3461 Oulipo(KMP:找出所有模式串)

本题就是经典的模式串匹配问题,只需要对上文中的程序稍作修改即可。(hihoCoder上的KMP算法一题,与本题一模一样) #include #include void getNext(char t[], int next[]) { int i=0, j=-1, tLen=strle...

2016-02-04 11:52:28

阅读数 309

评论数 0

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