Menu Sidebar
Menu

hashing

[LintCode] Subarray Sum

[LintCode] Anagrams

[LintCode] Compare Strings

[LintCode] Two Strings Are Anagrams

 

Codeforces Round #313 (Div. 2) D. Equivalent Strings

原题:http://codeforces.com/contest/560/problem/D 题目大意: 给字符串a和b, 定义a和b是等价的,如果: a和b相等. a等分成a1,a2,b等分成b1,b2, (a1==b1 && a2==b2) || (a2==b1 && a1==b2) 分析: 就暴呗…我也不知道为什么我暴就报错, 是因为java的原因么, 我看人家同样码用c++, 都飞快的.

答案的code是通过编码解的, 每次递归的时候, 都按照当前字符串的字典序排列列一下, 然后比较两个字符串是不是一样. 比如对cabddbac编码, 先递归到底, (c,a)(b,d)(d,b)(a,c),然后按照字典序排列(a,c)(b,d)(b,d)(a,c), 并且往上层走. (acbd)(acbd).最后就是acbdacbd

 

书脊

倾城与倾国, 佳人难再得