
1 import java.util.ArrayList; 2 import java.util.Scanner; 3
4 public class Main { 5 public static void main(String args[]) { 6 // System.out.println("請輸入一個正整數N");
7 Scanner sc = new Scanner(System.in); //初始化Scanner對象
8 int numN=sc.nextInt(); //輸入
9 ArrayList myNum= new ArrayList(); 10 ArrayList res= new ArrayList(); 11 // System.out.printf("依次輸入%d個整數\n",numN);
12 for (int i = 0;i<numN ;i++ ) { 13 int tempNum=sc.nextInt(); 14 myNum.add(tempNum); 15 res.add(tempNum); //保存排序之前的數據
16 } 17 // System.out.println("排序之前的數據:"+myNum.toString()+res.toString());
18 if(numN%2==0) { 19 // System.out.println("偶數"); 20 //從小到大排序:
21 int tempNum=0; 22 for(int i=0;i<numN;i++) { 23 for (int j=i+1;j<numN;j++) { 24 int i_num=(int) myNum.get(i); 25 int j_num=(int) myNum.get(j); 26 if(i_num>j_num) { 27 tempNum=i_num; 28 myNum.set(i, j_num); 29 myNum.set(j, tempNum); 30 } 31 } 32 } 33 // System.out.println("排序之后的數據:"+myNum.toString()+res.toString()); 34 // System.out.println(myNum.toString()); 35 //開始計算 結果保存在res數組中 下面是偶數情況:
36 for (int i=0;i<numN ; i++) 37 { 38 int zwNum=(int) myNum.get(numN/2); 39 int resTempNum=(int) res.get(i); //保存當前數據
40 if((resTempNum==zwNum) || (resTempNum>zwNum)) { 41 res.set(i, 0); 42 }else { 43 res.set(i, zwNum-resTempNum+1); 44 } 45 } 46 }else { 47 //---------------------------------------------------------------------- 48 // System.out.println("奇數"); 49 //從小到大排序:
50 int tempNum=0; 51 for(int i=0;i<numN;i++) { 52 for (int j=i+1;j<numN;j++) { 53 int i_num=(int) myNum.get(i); 54 int j_num=(int) myNum.get(j); 55 if(i_num>j_num) { 56 tempNum=i_num; 57 myNum.set(i, j_num); 58 myNum.set(j, tempNum); 59 } 60 } 61 } 62 // System.out.println("排序之后的數據:"+myNum.toString()+res.toString()); 63 //開始計算 結果保存在res數組中 下面是奇數情況:
64 for (int i=0;i<numN ; i++) 65 { 66 int zwNum=(int) myNum.get(numN/2); 67 int resTempNum=(int) res.get(i); //保存當前數據
68 if((resTempNum==zwNum) || (resTempNum>zwNum)) { 69 res.set(i, 0); 70 }else { 71 res.set(i, zwNum-resTempNum+1); 72 } 73 } 74 } 75 //輸出結果
76 System.out.println(res.toString()); 77 } 78 }

