基于数组判断字符串是否是回文
“回文串”是一个正读和反读都一样的字符串,比如“level”或者“noon”等等就是回文串。花花非常喜欢这种拥有对称美的回文串,生日的时候她得到两个礼物分别是字符串A和字符串B。现在她非常好奇有没有办法将字符串B插入字符串A使产生的字符串是一个回文串。你接受花花的请求,帮助她寻找有多少种插入办法可以使新串是一个回文串。如果字符串B插入的位置不同就考虑为不一样的办法。
例如:
A = “aba”,B = “b”。这里有4种把B插入A的办法:
- 在A的第一个字母之前: “baba” 不是回文
- 在第一个字母‘a’之后: “abba” 是回文
- 在字母‘b’之后: “abba” 是回文
- 在第二个字母’a’之后 “abab” 不是回文
所以满足条件的答案为2
输入描述:
每组输入数据共两行。
第一行为字符串A
第二行为字符串B
字符串长度均小于100且只包含小写字母
输出描述:
输出一个数字,表示把字符串B插入字符串A之后构成一个回文串的方法数
**理解:**本题将字符串B插入A是将B整体插入,放在某个位置上,算法采用的思想是先将B插入A的不同位置,然后再用回文检测算法 检验字符串是否是回文,A 和 B都是放在数组中的,开辟一个新的数组空间(线性空间),满足新的空间能放下A和B数组,当数据比较大的时候,这种方法需要开辟较大的线性空间,实用价值不高,可以用来解决算法题,其他的解题思路
示例1
输入;
aba
b
输出:
2
#include <stdio.h>
/*int strlen(char s[])
{int LA=0;int m=0;while(s[m]!='\0'){LA++;m++;}return LA;
}*/
int Huiwen(char s[])
{int l = strlen(s);int i;for( i=0;i<l/2;i++){if(s[i]==s[l-i-1]); //从两端像中间开始检测elsebreak;}if(i==l/2) return 1; //能跑到中间说明是回文串else return 0;
}
int main()
{char A[100],B[100];char C[200] = {'\0'};int sum = 0;gets(A);gets(B);int LenA = strlen(A);int LenB = strlen(B);for(int i=0;i<=LenA;i++){for(int j=0;j<i;j++){C[j]=A[j];//继续把A的字符i之前的字符串接入在B的前面} for(int k=i,v=0;v<LenB;k++,v++){C[k]=B[v];//把B字符串插入A的i位置}for(int k=LenA+LenB-1;k>i+LenB-1;k--){C[k] = A[k-LenB]; //把A中i后的字符串接到B的后面,从最后一个往前接}sum+=Huiwen(C);}printf("%d\n",sum);return 0;
}
基于数组判断字符串是否是回文相关推荐
- 【C语言】简单判断字符串是否为回文
**C语言简单判断字符串是否为回文**哈哈哈哈哈,作为一个刚学c语言不久的小白,今天来分享一下自己今天学到的一个判断字符串是否为回文的解决方法_(:з」∠)_小白用的编译器是Visual Studio ...
- C语言之判断字符串是否为回文
/*编写一个函数,判断字符串是否为回文.所谓回文指顺读和逆读都一样的字符串. 例如:"level","ABCCBA"*/ 顺读和逆读: 1.即数组第i个元素和第 ...
- 判断字符串是否是回文(C语言)
//判断字符串是否是回文 样例输入1:abc 样例输出1:0 //样例输入2:aba 样例输出2:1 //头文件 #include <stdio.h> #include <std ...
- python判断字符串是否回文_判断字符串是否为回文 python
回文正序和逆序一样的字符串,例如abccba 方法一 def is_palindrome1(text): l = list(text) l.reverse() t1 = ''.join(l) if t ...
- 1.7-33编程基础之字符串 33:判断字符串是否为回文
33:判断字符串是否为回文 查看提交统计提问 总时间限制: 1000ms 内存限制: 65536kB 描述 输入一个字符串,输出该字符串是否回文.回文是指顺读和倒读都一样的字符串. 输入 输入为一行字 ...
- C语言试题三十一之判断字符串是否为回文?若是则函数返回1,主函数中输出yes,否则返回0,主函数中输出no。回文是指顺读和倒读都是一样的字符串。
1. 题目 请编写函数function,该函数的功能是:判断字符串是否为回文?若是则函数返回1,主函数中输出yes,否则返回0,主函数中输出no.回文是指顺读和倒读都是一样的字符串. 2 .温馨提示 ...
- 判断字符串是否构成回文_构成字符串回文的最小删除数
判断字符串是否构成回文 Problem statement: 问题陈述: Given string str find the minimum number of deletions such that ...
- bigdecimal 判断是否为数字_C语言判断字符串是否为回文
回文就是字符串中心对称,如"abcba"."abccba"是回文,"abcdba"不是回文. /*判断字符串是否为回文*/ #include ...
- 1.7 编程基础之字符串 33 判断字符串是否为回文 python
http:// http://noi.openjudge.cn/ch0107/33/ """1.7 编程基础之字符串 33 判断字符串是否为回文http://noi.op ...
- 信息学奥赛一本通 1146:判断字符串是否为回文 | OpenJudge NOI 1.7 33:判断字符串是否为回文
[题目链接] ybt 1146:判断字符串是否为回文 OpenJudge NOI 1.7 33:判断字符串是否为回文 [题目考点] 1. 字符串遍历 如何遍历字符串的一半? 如果字符串长度为len,那 ...
最新文章
- java super快速生成_为什么当我使用编辑器代码生成器时,eclipse会在构造函数中自动添加一个java super()方法?...
- Python基础11-函数式编程与内置函数
- 转:MySQL性能优化神器Explain使用分析
- 年轻人买菜只愿意走670米,每日优鲜、叮咚买菜等生鲜电商们依然“难送达”
- 行为型模式:中介者模式
- 2010中国杭州电子信息博览会通讯报道
- 浮动—春联(文字竖直排列)
- JAVA头部声明异常,Java 异常详解
- Turtlebot2 环境配置
- ajax json java_ajax_json
- kettle-查询控件
- javaSe--integer与int
- HTML5项目笔记8:使用HTML5 的跨域通信机制进行数据同步
- LeetCode经典算法精解-字符串编辑距离
- OSG绘制空间凹多边形以及透明效果的实现
- PB 级数据即席查询基于 Flink 的实践
- 房屋租赁合同法律规定是怎样的
- OpenHarmony命令行工具hdc_std使用总结
- 如何记账,教你记录初始金额,查询账户余额
- Flutter:bottomNavigationBar图标白色的解决办法
热门文章
- DataMatrix 数据容量
- 算法笔记(七)扩大感受野SPP/ASPP/RBF
- simulink反差表
- 一起来找:程序员必去的社区与网站
- 计算机支架式教学案例,万紫千红总是春--支架式教学(网友来稿)
- 重庆云阳2021云中高考成绩查询,2021年云阳县高考状元成绩分数,云阳县历年高考状元名单...
- python编写年金现值计算函数_Python基础(三) 汇率计算demo
- 复信号与信号的I/Q值
- 数据库安全:Oracle数据库防火墙技术
- 认识 Iconfont 以及什么是 .eot、.woff、.ttf、.svg