import java.util.Scanner;
class Demo_11 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int[] arr = {1,3,9,34,38,40,89,100,111,222,789};
//创建一个新数组长度+1来存放新增数字
int[] arr1 = new int[arr.length+1];
//输入要增加的数字
System.out.println("请输入要增加的数字:");
int num = sc.nextInt();
//记录位置
int min = 0;
int max = arr.length-1;
int mid = (min+max)/2;
while(min<=max){
if(num >= arr[mid]){
min = mid+1;
mid = (min+max)/2;
}else if(num<arr[mid]){
max = mid-1;
mid = (min+max)/2;
}
}
//当min>max时,就意味着要插入的数字在二者指向的对象之间
//在max之后min之前
//将数组放到新数组中
for(int i = 0;i<min;i++){
arr1[i] = arr[i];
}
arr1[min] = num;
for(int i = min;i<arr.length;i++){
arr1[i+1] = arr[i];
}
//打印插入后的数组
for(int i = 0;i<arr1.length;i++){
System.out.print(arr1[i]+" ");
}
}
}