字符串组合“S1+C1+S2+C2+S3”-欢聚时代笔试题
2017-09-17 17:19
197 查看
题目描述
给定任意非空字符串,请编程回答存在多少种如下组合的情况“S1+C1+S2+C2+S3”,其中S1/S2/S3为任意非空字符串,C1/C2为任意字符,且C1=C2.举例说明:例如字符串“duowanisgood”可以分为两种“du+o+wanisg+o+od”和“du+o+wanisgo+o+d”
可以从中看出字符串的长度要大于等于5,我们利用双指针滑动的方式解决本题
public static int compositionCount(String s){ int i =1; int j =s.length()-2; int count =0; while((i<s.length()-3)&& i<j){ if((s.charAt(i)==s.charAt(j))&& (j-i>=1)){ count ++; } if(j-i==2 && j>i){ i++; j =s.length()-2; }else j--; } return count; }
相关文章推荐
- [笔试题]字符串的排列和组合
- 【IT笔试面试题整理】字符串的组合
- [互联网面试笔试汇总C/C++-11] 字符串全排列和组合算法
- 【Java笔试题】输出字符串的所有组合
- 输入一个字符串,输出该字符串中字符的所有组合。(腾讯2014笔试附加题)
- 数据结构基础(11)------------输出字符串的所有组合( Permutation)--腾讯笔试附加题
- 算法笔试题整理——升级蓄水池 && 字符串数字表达式计算值 && 求旅游完所有景点需要的最少天数 && 宝箱怪
- 华为笔试题:括号的排列组合
- codeforces 156C Cipher 组合数学 字符串dp
- 字符串排列、组合(C语言实现)
- 笔试题1——找到字符串中第一个只出现一次的那个字符
- 数字字符串转换为字母组合的种数
- 字符串自动表示列(组合自动表示列)
- javascript数组组合成字符串的脚本
- 字符串中字符的所有组合(组合中的先后顺序不考虑)
- java面试笔试题,字符串反转问题
- 字符串的组合
- SQLSERVER查询单个数据表所有字段名组合成的字符串脚本
- [2013百度软件研发笔试题] 求字符串中连续出现相同字符的最大值
- 字符串的全排列和组合算法