兄弟,你这代码谁看的懂啊?给你个100%AC的代码吧,我的逻辑可能有点绕,你先看看吧。 import java.util.Scanner; public class Main{ public static void main(String ...args){ Scanner in = new Scanner(System.in); String[] line = in.nextLine().split(" "); int n = Integer.parseInt(line[0]); int m = Integer.parseInt(line[1]); int c = Integer.parseInt(line[2]); boolean[][] table = new boolean[n][c]; for (int i = 0; i < n; i++) { line = in.nextLine().split(" "); int k = Integer.parseInt(line[0]); for (int j = 1; j <= k; j++) { table[i][Integer.parseInt(line[j])-1] = true; } } int result = 0; int len = 0; for (int j = 0; j < c; j++) { len = 0; boolean isContinue = false; for(int i = 0; i < n; i++){ if(len >= m){ len = 0; isContinue = false; } if(isContinue){ if(table[i][j]){ result++; isContinue = false; break; }else{ len++; } }else{ if(table[i][j]){ isContinue = true; len++; } } } //判断环型数组末尾 if(isContinue){ for(int i = 0; i < n; i++){ if(len >= m){ break; } if(table[i][j]){ result++; break; }else{ len++; } } } } System.out.println(result); } }
点赞 评论

相关推荐

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