当前位置: 首页 > news >正文

门户网站开发维护合同国内永久免费crm系统app

门户网站开发维护合同,国内永久免费crm系统app,wordpress分类信息模板,网站后台 行间距调整题干#xff1a; 自从 Applese 学会了字符串之后#xff0c;精通各种字符串算法#xff0c;比如……判断一个字符串是不是回文串。 这样的题目未免让它觉得太无聊#xff0c;于是它想到了一个新的问题。 如何判断一个字符串在任意位置(包括最前面和最后面)插入一个字符后…题干   自从 Applese 学会了字符串之后精通各种字符串算法比如……判断一个字符串是不是回文串。 这样的题目未免让它觉得太无聊于是它想到了一个新的问题。 如何判断一个字符串在任意位置(包括最前面和最后面)插入一个字符后能不能构成一个回文串 输入描述: 仅一行为一个由字母和数字组成的字符串 s。 输出描述: 如果在插入一个字符之后可以构成回文串则输出Yes, 否则输出No。 示例1 输入 复制 applese 输出 复制 No 示例2 输入 复制 java 输出 复制 Yes 备注: |s|≤105 题目大意 一句话题意给定一个字符串,问是否能通过添加一个字母将其变为回文串。 解题报告 可以认为插入和删除是等价的操作。想到这一点这题就会好做很多。 如果这个串本身就是回文串答案一定是Yes。因为如果原来是奇数个字符那直接加一个中间的字符就行了如果原来是偶数个字符在中间随便加一个字符依旧是回文串。 否则我们只需要找到串中对称的位置第一对 不相等的两个字符分别尝试把它们删掉后判断一下是不是回文的就行了。 时间复杂度O(n)。还有中n^2的做法就是枚举每一个删除的位置看删除之后剩下的字符串是否是回文串但是效率就太低了。。 AC代码O(n)的解法 #includecstdio #includeiostream #includealgorithm #includequeue #includemap #includevector #includeset #includestring #includecmath #includecstring #define ll long long #define pb push_back #define pm make_pair #define fi first #define se second using namespace std; const int MAX 2e5 5; bool ok(string s) {string s2s;reverse(s2.begin(),s2.end());return ss2; } string str; int main() {bool flag 0;cinstr;int len str.size(),i;for(i 0; ilen/2;i) {if(str[i] ! str[len-1-i]) break;}if(i len/2) flag 1;if(ok(str.substr(i1,len-2*i-1))) flag 1;if(ok(str.substr(i,len-2*i-1))) flag 1;if(flag) puts(Yes);else puts(No); return 0; } TLE代码 #includecstdio #includeiostream #includealgorithm #includequeue #includemap #includevector #includeset #includestring #includecmath #includecstring #define ll long long #define pb push_back #define pm make_pair #define fi first #define se second using namespace std; const int MAX 2e5 5; bool ok(string s) {string s2s;reverse(s2.begin(),s2.end());return ss2; } string str; int main() { cinstr;bool flag0;int len str.size();for(int i0;ilen;i){if(ok(str.substr(0,i)str.substr(i1,len-1-i))){flag1;break;}}if(flag) puts(Yes);else puts(No);return 0; } 一段有待考察的代码 //#includecstdio //#includeiostream //#includealgorithm //#includequeue //#includemap //#includevector //#includeset //#includestring //#includecmath //#includecstring //#define ll long long //#define pb push_back //#define pm make_pair //#define fi first //#define se second //using namespace std; //const int MAX 2e5 5; //char s1[MAX],s2[MAX],s3[MAX],s4[MAX],c2[MAX],ch; //int main() //{ // cins1; // int len strlen(s1); // strcpy(s2,s1); // reverse(s2,s2len); // strcpy(c2,s2); // for(int i 0; ilen; i) { // if(s1[i] s2[i]) continue; // ch s1[i]; // for(int j len; ji1; j--) c2[j] c2[j-1]; // c2[i] ch; // break; // } // strcpy(s3,c2); // strcpy(s4,s3); // reverse(s4,s4strlen(s3)); // if(strcmp(s3,s4) 0) puts(Yes); // else puts(No); // return 0 ; // }扩展一个思路给定一个字符串问添加几个字符可以构成回文串 先把原字符串逆序然后计算两字符串的最长公共子序列长度最后diff字符串长度-最长公共子序列长度diff即为如果可以形成回文串原字符串需要添加的字符个数。用到这个题目里如果diff1即可。时间复杂度O(n^2)。
http://wiki.neutronadmin.com/news/201576/

相关文章:

  • 网站中的文字滑动怎么做的崇信县网站留言
  • 电子表格做网站框架好男人hd免费观看
  • wordpress建企业网站教程烟台网站建设 58
  • 如需手机网站建设湘阴县住房建设局网站
  • 网站整套模板项目代码下载什么是百度权重
  • 新手自建网站做跨境电商高清线和视频线区别
  • 手机网站制作行业排行网站基本维护
  • 网站的前端怎么做做的很好的网站
  • 做网站在哪里做wordpress链接伪静态
  • 网站建设公司哪里有门户网站的盈利模式
  • php网站搭建教程学长的手在我的裤子里作文
  • 贺州网站制作三亚做网站哪家好
  • 北京公司网站制作百度指数怎么看排名
  • 本科专业 网站开发不懂开发如何建设网站
  • 惠山网站建设益阳网站建设哪里好
  • 做彩票网站程序违法吗西安有哪些做网站的公司好
  • 建设学校网站关键词优化难度查询
  • 购物网站开发毕业设计开题报告我想创建一个网站自己玩玩
  • 怎么自己做网站服务器老电脑做网站服务器
  • 网站开发与制作论文开题关于网站建设的调查问卷
  • vc6.0做网站网站及微站建设合同
  • 济宁网站开发平台科讯怎么建设网站
  • 123手机浏览器seo网络推广招聘
  • 兰州新站点seo加盟教育培训机构排名前十
  • 即墨医院网站制作公司wordpress修改固定链接后无法访问
  • 宾馆网站建设wordpress媒体库在哪
  • 网站注册完域名如何建站门户网站开发维护合同范本
  • 展示型型网站建设WordPress登录注册页面美化
  • 全新网站开发如何申请网站空间
  • 兰州企业网站制作百度软件推广联盟