使用 C++ 中追加和删除末尾操作来实现字符串之间的相互转换


在本教程中,我们将讨论一个使用追加和删除末尾操作将一个字符串转换为另一个字符串的程序。

为此,我们将提供两个字符串。我们的任务是计算是否可以通过对最后一个元素执行 k 次追加和删除操作将第一个字符串转换为第二个字符串。

示例

#include <bits/stdc++.h>
using namespace std;
//checking if conversion between strings is possible
bool if_convert(string str1, string str2,
int k){
   if ((str1.length() + str2.length()) < k)
   return true;
   //finding common length of both string
   int commonLength = 0;
   for (int i = 0; i < min(str1.length(),
   str2.length()); i++) {
      if (str1[i] == str2[i])
      commonLength++;
      else
      break;
   }
   if ((k - str1.length() - str2.length() +
   2 * commonLength) % 2 == 0)
   return true;
   return false;
}
int main(){
   str1 = "tutorials", str2 = "point";
   k = 5;
   cout << endl;
   if (if_convert(str1, str2, k))
   cout << "Yes";
   else
   cout << "No";
   return 0;
}

输出

No

更新于: 2020-01-29

94 次浏览

启动你的职业

完成课程获取认证

开始
广告