字符串分割
2015-12-26 20:58
204 查看
未通过全部测试用例
就像切一块水果蛋糕,字典相当于这块蛋糕上至少包含的水果的组合,问你最多能够切几块?
public static void main(String[] args) {
String s = "abafab";
System.out.println(s.length());
String[] dics ={"ab","f","a"};
int n = 3;
getMaxSegs(s,dics,n);
}
public static int getMaxSegs(String S,String[] dics,int n){
int count = 0;
HashMap<String,Integer> map = new HashMap<String,Integer>();
for(int i = 0; i < n; i++){
map.put(dics[i], 1);
}
boolean flag = false;
for(int j = 0; j < S.length();){
System.out.println("====================================");
int m = 1;
String key = "";
while((j+m <= S.length()) && !flag){
key = S.substring(j, j+m);
System.out.println("key:"+key);
if(map.containsKey(key)){
flag = true;
count++;
System.out.println("************************true");
}else{
m++;
System.out.println("false m:"+m);
System.out.println("false m+j:"+(m+j));
}
}
if(flag){
System.out.println("m:"+(m+j));
j = m+j;
System.out.println("j:"+j);
}else{
j++;
}
flag = false;
}
System.out.println("count:"+count);
return count;
}
就像切一块水果蛋糕,字典相当于这块蛋糕上至少包含的水果的组合,问你最多能够切几块?
public static void main(String[] args) {
String s = "abafab";
System.out.println(s.length());
String[] dics ={"ab","f","a"};
int n = 3;
getMaxSegs(s,dics,n);
}
public static int getMaxSegs(String S,String[] dics,int n){
int count = 0;
HashMap<String,Integer> map = new HashMap<String,Integer>();
for(int i = 0; i < n; i++){
map.put(dics[i], 1);
}
boolean flag = false;
for(int j = 0; j < S.length();){
System.out.println("====================================");
int m = 1;
String key = "";
while((j+m <= S.length()) && !flag){
key = S.substring(j, j+m);
System.out.println("key:"+key);
if(map.containsKey(key)){
flag = true;
count++;
System.out.println("************************true");
}else{
m++;
System.out.println("false m:"+m);
System.out.println("false m+j:"+(m+j));
}
}
if(flag){
System.out.println("m:"+(m+j));
j = m+j;
System.out.println("j:"+j);
}else{
j++;
}
flag = false;
}
System.out.println("count:"+count);
return count;
}
相关文章推荐
- Fatal error: Call to undefined function session_register() 的解决方法
- DLR、ASTER GDEM、SRTM3、GMTED2010等5种全球高程数据对比
- WW_TRANS_I18N_LOCALE”与“WW_TRANS_I18N_LOCALE”属性
- 变量十进制输出、无符号整数、浮点、指数、ASICC码表、字符运算
- 调试之剑
- Andriod获取系统自带铃声
- hdu 计算机学院大学生程序设计竞赛(2015’12)Happy Value(最大生成树)
- 通过overScrollBy实现下拉视差特效
- uva10763
- Redis 存储字符串和对象
- ABP理论学习之事件总线和领域事件
- PHP编译安装出错configure: error: mcrypt.h not found. Please reinstall libmcrypt的解决办法
- 谱聚类:Ng算法
- 【郑轻】[1821]YZ的解密游戏
- uva10905
- AS上butterknife插件安装与使用
- hdu 计算机学院大学生程序设计竞赛(2015’12)The Country List
- LeetCode[263] Ugly Number(Java)
- java对redis的基本操作
- mac邮箱无法验证账户名和密码问题