关键字过滤:输入字符串s1和s2,判断s1中是否顺序包含s2中所有字符(大小写敏感),如果否,输出s1,如果是,输出“不可描述”
例:输入ABCde,Ad,输出:不可描述
输入ABCde,AA输出:ABCde
要求:不能使用字符相关的库函数
| import java.util.Scanner; public class a4399 { public static void main(String args[]){ Scanner sc = new Scanner(System.in); String str = sc.nextLine(); String str1 = sc.nextLine(); String arr[] = new String[str.length()]; //第一次输入的数 String arr1[] = new String[str1.length()];//第二次输入得数 int count=0; for(int i=0;i<str.length();i++){ arr[i]= str.substring(i,i+1); } for(int j=0;j<str1.length();j++){ arr1[j]= str1.substring(j,j+1); } for(int k =0;k<str1.length();k++){ for(int n =0;n<str.length();n++){ if(arr1[k].equals(arr[n])){ arr[n]="*"; count++; break; } } } if(str1.length()==count){ System.out.println("不可描述"); }else{ System.out.println(str); } } } |
import java.util.Scanner;
public class solution {
public String findit(String str){
Scanner scanner = new Scanner(System.in);
String str1 = scanner.next();
String str2 = scanner.next();
char[] char1 = str1.toCharArray();
char[] char2 = str2.toCharArray();
int p1 = 0;
int p2 = 0;
while(p1<str1.length() && p2<str2.length()){
while(p1<str1.length() && p2<str2.length() && char1[p1]!=char2[p2]){
p1++;
}
p1++;
p2++;
}
if(p2 >= char2.length){
return new String("不可描述");
}else{
return str1;
}
}
} public String includeStr(String s1, String s2){
if(s1.length() < s2.length()) return s2;
String s = "";
int index = 0;
for(int i = 0; i < s2.length(); i++){
int j = index;
for(; j < s1.length();){
if(s2.charAt(i) == s1.charAt(j)){
s += s2.charAt(i);
index = j;
break;
}else{
j++;
}
}
}
if(s.equals(s2)) return "不可描述";
else return s2;
} str1=input()#第一次输入 str2=input()#第二次输入 list_str=[] for i in range(len(str1)): for j in range(len(str2)): if str1[i]==str2[j]: list_str.append(j) new_list=[] print(list_str) for item in list_str: if not item in new_list: new_list.append(item) new_list.sort() print(new_list) new_str="" for i in range(len(new_list)): new_str=new_str+str2[new_list[i]] if(new_str==str1): print("不可描述") else: print(str1)