import java.util.*; public class Two { static class line{ int from; int to; boolean use=true; public line(int from, int to) { this.from = from; this.to = to; } } public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int n= scanner.nextInt(); scanner.nextLine(); String[] arr=new String[n]; for (int i = 0; i <n ; i++) { arr[i]=scanner.nextLine(); } String T= scanner.nextLine(); List<line>list=new ArrayList<>(); for (int i = 0; i <n ; i++) { int index=T.indexOf(arr[i],0); while (index!=-1) { list.add(new line(index,index+arr[i].length())); index=T.indexOf(arr[i],index+1); } } Collections.sort(list, new Comparator<line>() { @Override public int compare(line o1, line o2) { return o1.to>o2.to?1:-1; } }); int num=0; for (int i = 0; i < list.size(); i++) { if (!list.get(i).use)continue; num++; for (int j = i+1; j <list.size() ; j++) { if (list.get(j).from<list.get(i).to)list.get(j).use=false; } } System.out.println(num); } }
点赞 评论

相关推荐

牛客网
牛客网在线编程
牛客网题解
牛客企业服务