nyoj 308-Substring(find 和 substr的用法)

来源:互联网 发布:php下载站源码 编辑:程序博客网 时间:2024/04/28 17:09

http://acm.nyist.net/JudgeOnline/problem.php?pid=308

  题目意思是求一个子串 ,这个子串反转之后还是原串的子串。

 #include<iostream>#include<algorithm>#include<string> using namespace std;int main() {  int n;  cin >> n;  while (n--) {    bool flag = false;    string str1, str2;    cin >> str1;    str2 = str1;    reverse(str2.begin(), str2.end()); //反转字符串     for (int i = str1.size(); i > 0; i--) {  //      for (int j = 0; j <= str1.size() - i; j++) { //遍历字符串         string t = str1.substr(j, i); //截取字符串         string::size_type pos = str2.find(t); //size_type相当于一个宏定义         if (pos != string::npos) { //string::npos理解为一个返回值为假的值           cout << t << endl;          flag = true;          break;        }       }      if (flag)break;    }  }} //题目意思是求一个子串,该子串反转之后还是该字符串中的子串 //思路是先把该字符串反转 然后再找         


0 0