import java.util.ArrayList; import java.util.Scanner; public class Main1 { public static void main(String[] args) { Scanner sc=new Scanner(System.in); while(sc.hasNext()){ int n=sc.nextInt(); //珠子的个数 int m=sc.nextInt(); //连续不能出现同一种颜色的珠子数 int c=sc.nextInt(); //颜色的种类 ArrayList<ArrayList<Integer>> arr=new ArrayList<ArrayList<Integer>>(); for(int i=0;i<n;i++){ ArrayList<Integer> list=new ArrayList<Integer>(); int k=sc.nextInt(); for(int j=0;j<k;j++){ list.add(sc.nextInt()); } arr.add(list); } f(arr,n,m,c); } } private static void f(ArrayList<ArrayList<Integer>> arr, int n, int m, int c) { if(m==1){ System.out.println(0); return; } ArrayList<ArrayList<Integer>> p=new ArrayList<ArrayList<Integer>>(); int sum=0; for(int i=1;i<=c;i++){   //每一种颜色进行判断      ArrayList<Integer> list=new ArrayList<Integer>();      int count=1;      for(ArrayList<Integer> t:arr){      for(int j=0;j<t.size();j++){      if(t.get(j)==i){      list.add(count);      t.remove(Integer.valueOf(i));      }      }      count++;      }      p.add(list); } for(ArrayList<Integer> t:p){ if(t.size()==1){ continue; } if((t.get(0)==1)&&(t.get(t.size()-1)==n)){ sum++; continue; } for(int i=1;i<t.size();i++){ if((t.get(i)-t.get(i-1))<m){ sum++; continue; } } } System.out.println(sum); } }
点赞 2

相关推荐

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