第一题 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&amp;&amp;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(&quot;day:&quot;+i+&quot;kDay:&quot;+kDay);kDay=0;}else if(a[i]==1&amp;&amp;a[i+1]==0) {ans++;}else if(a[i]==0) kDay++;}Set<Integer> kDaySet=kDayMap.keySet();// System.out.println(kDaySet+&quot;/&quot;+ans+&quot;/&quot;+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(&quot;key:&quot;+key+&quot; value:&quot;+value+&quot; moreday:&quot;+moreDay+&quot; ans:&quot;+ans);}System.out.println(ans);// System.out.println(moreDay);// System.out.println(kDayMap);in.close();}}第二题来不及做打表