//我的代码有什么问题求大佬看一下 import java.util.*; public class Main {     public static void main(String[] args) {         Scanner scan = new Scanner(System.in);         int T = scan.nextInt();         int[] res = new int[T];         for (int i = 0; i < T; i++) {             int k = scan.nextInt();             int m = scan.nextInt();             int[] nums = new int[m];             for (int j = 0; j < nums.length; j++) {                 nums[j] = scan.nextInt();             }             res[i] = find(nums, k);         }         for (int i = 0; i < T; i++) {             System.out.println(res[i]);         }     }     private static int find(int[] nums, int k) {         int[] help = new int[31];         int cnt = nums.length;         for (int i = 0; i < nums.length; i++) {             help[nums[i]] = 1;         }         int cnt1=0;         int cnt2=0;         boolean bool=true;         for (int i = 1; i < help.length; i++) {             if (help[i]!=0){                 if (bool){                     cnt2=cnt1/(k+1);                 }else {                     cnt2=(cnt1-k)/(k+1);                 }                 bool=false;                 cnt+=cnt2;                 cnt1=0;             }else {                 cnt1++;             }         }         if (cnt1!=0){             cnt2=cnt1/(k+1);             cnt+=cnt2;         }         return cnt;     } }
点赞 评论

相关推荐

点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务