SRM 597 D2 L2:LittleElephantAndString
2014-02-11 17:19
447 查看
题目:http://community.topcoder.com/stat?c=problem_statement&pm=12854&rd=15709
反过来考虑将 B 变换成 A 简便很多。看别人代码学到 multiset 的一个用法,很方便。
代码:
反过来考虑将 B 变换成 A 简便很多。看别人代码学到 multiset 的一个用法,很方便。
代码:
#include <algorithm> #include <functional> #include <numeric> #include <utility> #include <iostream> #include <sstream> #include <iomanip> #include <bitset> #include <string> #include <vector> #include <stack> #include <deque> #include <queue> #include <set> #include <map> #include <cstdio> #include <cstdlib> #include <cctype> #include <cmath> #include <cstring> #include <ctime> #include <climits> #include <cassert> using namespace std; #define CHECKTIME() printf("%.2lf\n", (double)clock() / CLOCKS_PER_SEC) /*************** Program Begin **********************/ class LittleElephantAndString { public: bool searchstr(string str, string seastr)// 判断 seastr 是否是 str 的子序列 { int p1, p2; p1 = p2 = 0; for (; p2 < seastr.size(); p2++, p1++) { for (; p1 < str.size(); p1++) { if (seastr[p2] == str[p1]) { break; } } if (p1 == str.size()) { return false; } } return true; } int getNumber(string A, string B) { int res = 0; if ( multiset <char> (A.begin(), A.end()) != multiset <char> (B.begin(), B.end()) ) { return -1; } int n = A.size(); res = n; string nextB; for (int i = 0; i < n; i++) { nextB = B.substr(i, n - i); if (searchstr(A, nextB)) { res = i; break; } } return res; } }; /************** Program End ************************/
相关文章推荐
- Topcoder SRM 597 LittleElephantAndSubset
- SRM 595 D2 L3:LittleElephantAndXor, dp
- SRM 608 D2 L2:MysticAndCandiesEasy
- topcoder SRM 592 DIV2 LittleElephantAndBooks
- *[topcoder]LittleElephantAndString
- SRM 605 D2 L2:AlienAndGame
- topcoder SRM 592 DIV2 LittleElephantAndPermutationDiv2
- <codeforces>A. Little Elephant and Rozdil
- B. Little Elephant and Sorting
- CodeForces 220B Little Elephant and Array
- B. Little Elephant and Magic Square
- A. Little Elephant and Bits
- codeblocks B - Little Elephant and Numbers
- AC日记——Little Elephant and Function codeforces 221a
- AC日记——Little Elephant and Shifts codeforces 221e
- CF 220C Little Elephant and Shifts
- codeforce 205C - Little Elephant and Interval
- Codeforces 221d D. Little Elephant and Array
- Little Elephant and Mouses
- AC日记——Little Elephant and Numbers codeforces 221b