欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

第七周练习(J)

程序员文章站 2022-07-14 14:14:15
...

题目:
第七周练习(J)
第七周练习(J)
![第七周练习(J)

题意:将已有的人分到若干组,且改组经验不足的人要在人数大于它不足的经验的组里,就是一个组的人的经验最大不足数等于该组人数
思路:对已有的人进行排序,从前到后进行遍历,用max记录改组的人的最大不足经验,用num记录该组人数,如果两个值相等,则对ans++
AC代码:

import java.io.*;
import java.math.*;
import java.math.BigInteger;
import java.util.*;
public class Main {
 public static void main(String[] args) {
  Scanner sc=new Scanner(System.in);
  for(int t=sc.nextInt();t>0;t--) {
   int n=sc.nextInt();
         int arr[]=new int [n];
         int max=0,num=0,ans=0;
         for(int i=0;i<n;i++) arr[i]=sc.nextInt();
         Arrays.sort(arr);
         for(int i=0;i<n;i++){
             max=Math.max(max,arr[i]);
             num++;
             if(max==num) {
              ans++;
              num=0;
             }
        }
        System.out.println(ans);
  }
 }
}
相关标签: 算法题目