佬,小米需要提前实习吗
点赞 1

相关推荐

第一题import java.util.*;public class test {    public static void main(String[] args) {        Scanner in=new Scanner(System.in);        int n=in.nextInt();        int k=in.nextInt();        int[] a=new int[100005];        int ai;        int st=100005,ed=0;        for(int i=0;i<n;i++){             ai=in.nextInt();             a[ai]=1;             if(i==0) st=ai;             if(i==n-1) ed=ai;        }        int moreDay=k-n,ans=0,kDay=0;        TreeMap<Integer,Integer> kDayMap=new TreeMap<>();        for(int i=st-1;i<=ed+1;i++){            if(a[i]==0&&a[i+1]==1) {                ans++;                if(i<=st) continue;                kDay++;                if(kDayMap.containsKey(kDay)){                    kDayMap.put(kDay,kDayMap.get(kDay)+1);                }else kDayMap.put(kDay,1);//                System.out.println("day:"+i+"kDay:"+kDay);                kDay=0;            }            else if(a[i]==1&&a[i+1]==0) {                ans++;            }            else if(a[i]==0) kDay++;        }        Set<Integer> kDaySet=kDayMap.keySet();//        System.out.println(kDaySet+"/"+ans+"/"+moreDay);        for(int key:kDaySet){//            System.out.println(key);//            System.out.println(kDayMap.get(key));            int value=kDayMap.get(key);            if(key*value<=moreDay){                moreDay-=key*value;                ans-=value*2;            }else {                ans-=(moreDay/key)*2;                moreDay=0;            }            if(moreDay==0) break;//            System.out.println("key:"+key+" value:"+value+" moreday:"+moreDay+" ans:"+ans);        }        System.out.println(ans);//        System.out.println(moreDay);//        System.out.println(kDayMap);        in.close();    }}第二题来不及做打表#牛客创作赏金赛#
查看2道真题和解析 投递小米集团等公司10个岗位 牛客创作赏金赛
点赞 评论 收藏
分享
牛客网
牛客企业服务