import java.util.ArrayList; import java.util.HashMap; import java.util.Scanner; public class Main{     public static String[] num= {"zero","one","two","three","four","five","six","seven","eight","nine"};     public static ArrayList<Integer> nums = new ArrayList<Integer>();     public static HashMap map = new HashMap();     public static void fun(String str){         if("".equals(str)){             for(int i = 0;i<nums.size();++i){                 System.out.print(nums.get(i));             }             System.exit(0);         }else{             for(int i = 0;i<=9;++i){                 nums.add(i);                 String string = "";                                  if(map.containsKey(num[i])){                     string = "false";                 }else{                     string = fun1(str, num[i]);                 }                                  if(!"false".equals(string)){                     fun(string);                     nums.remove(nums.size()-1);                 }else{                     map.put(num[i], "false");                     nums.remove(nums.size()-1);                 }             }         }     }     /**      * 判断Str中有无num的拼写,若有,则在Str中删除num的字符,且返回剩下的字符,若无,返回false      * @param str      * @param num      * @return      */     public static String fun1(String str,String num){         ArrayList<Integer> index = new ArrayList<Integer>();         for(int i = 0;i<num.length();++i){             boolean flag = false;             for(int j = 0;j<str.length();++j){                 if(num.charAt(i) == str.charAt(j)){                     if(!index.contains(j)){                         flag = true;                         index.add(j);                         break;                     }                 }             }             if(!flag){                 index = null;                 break;             }         }         if(index != null && index.size()!=0){             return fun2(str, index);         }         return "false";     }     /**      * 删除str中的num,返回剩余的字符串      * @param str      * @param index      * @return      */     public static String fun2(String str,ArrayList<Integer> index){         String newStr = "";         for(int i = 0;i<str.length();++i){             if(!index.contains(i)){                 newStr += str.charAt(i);             }         }         return newStr;     }          public static void main(String[] args) {         Scanner sc = new Scanner(System.in);         String line = sc.nextLine();         fun(line.toLowerCase());     } }
点赞 2

相关推荐

有担当的灰太狼又在摸鱼:零帧起手查看图片
点赞 评论 收藏
分享
后来123321:别着急,我学院本大二,投了1100份,两个面试,其中一个还是我去线下招聘会投的简历,有时候这东西也得看运气
点赞 评论 收藏
分享
牛客网
牛客企业服务