关注
import java.util.ArrayList;
import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner s = new Scanner(System.in);
while(s.hasNext()){
String[] ss = s.nextLine().split("\\s+");
int n = Integer.parseInt(ss[0]);//n条
int m = Integer.parseInt(ss[1]); //间隔
int c = Integer.parseInt(ss[2]);//颜色数量
ArrayList<ArrayList<Integer>> list = new ArrayList<>();
for(int i =0; i <n; i++){
String[] str = s.nextLine().split("\\s+");
ArrayList<Integer> arr = new ArrayList<>();
for(int j= 0; j<str.length; j++){
arr.add(Integer.parseInt(str[j]));
}
int zhonglei = arr.remove(0);
if(zhonglei == 0)
arr.add(-1);
list.add(arr);
}
ArrayList<ArrayList<Integer>> list1 = new ArrayList<>();
for(int i=1; i<=c; i++){
ArrayList<Integer> arr = new ArrayList<>();
for(int j=0; j<list.size(); j++){
if(list.get(j).contains(i)){
arr.add(j+1); // 存储相同颜色所在的串序号
}
}
list1.add(arr);
}
int countColor=0;
for(int i=0; i<list1.size();i++){ // 每个组进行判断
if(list1.get(i).size()==1){ //相同颜色组只有一个元素跳过
continue;
}
// size>=2 判断最后一个和第一个相差多远
if(list1.get(i).get(0)+list1.get(i).size()-list1.get(i).get(list1.get(i).size()-1)-1<m){
countColor++;
continue;
}
//判断相邻的相差多远
for(int j=0; j<list1.get(i).size()-1;j++){
if(list1.get(i).get(j+1)-list1.get(i).get(j)<m){
countColor++;
break;
}
}
}
System.out.println(countColor);
}
}
}
查看原帖
点赞 评论
相关推荐
牛客热帖
更多
正在热议
更多
# xx岗简历求拷打 #
12730次浏览 131人参与
# 如何看待offer收割机的行为 #
1048523次浏览 6607人参与
# 开工第一帖 #
43910次浏览 834人参与
# 掌握什么AI技能,会为你的求职大大加分 #
10364次浏览 431人参与
# 有转正机会的小厂实习值得去吗? #
10311次浏览 109人参与
# 互联网回暖,腾讯要招5000人! #
25325次浏览 598人参与
# 携程求职进展汇总 #
891931次浏览 5910人参与
# 机械人还在等华为开奖吗? #
316308次浏览 1586人参与
# 面试反问你会问什么 #
169553次浏览 1744人参与
# 求职季如何保持心态不崩 #
214243次浏览 1469人参与
# 联想求职进展汇总 #
335443次浏览 2224人参与
# 金三银四,你有感觉到吗 #
696573次浏览 6096人参与
# 制造业的秋招小结 #
145073次浏览 2095人参与
# 你最讨厌面试被问什么 #
10867次浏览 122人参与
# 工作不开心辞职是唯一出路吗 #
10227次浏览 40人参与
# 被说“做题家”,你的反应是_____? #
12676次浏览 165人参与
# 远程面试的尴尬瞬间 #
329134次浏览 1918人参与
# 面试题刺客退退退 #
536274次浏览 7533人参与
# 哪些公司开春招了? #
35518次浏览 210人参与
# 应届生进小公司有什么影响吗 #
123595次浏览 1171人参与
字节跳动工作强度 1104人发布