java(結構體排序)
阿新 • • 發佈:2018-11-29
問題描述
對於給定整數陣列a[],尋找其中最大值,並返回下標。
輸入格式
整數陣列a[],陣列元素個數小於1等於100。輸出資料分作兩行:第一行只有一個數,表示陣列元素個數;第二行為陣列的各個元素。
輸出格式
輸出最大值,及其下標
樣例輸入
3 3 2 1
樣例輸出
3 0
我覺得,題目有點小錯誤,但不影響讀題,就是找出最大值及其下標,注意下標從0開始。
import java.util.*; public class Main { static Scanner cin = new Scanner(System.in); static class hh{ int v; int id; public hh(int v,int id) { this.v=v; this.id=id; } }//結構體 static hh [] a = new hh[5000]; static Comparator cmp = new Comparator <hh>() { public int compare(hh a,hh b){ return a.v-b.v; } };//結構體比較函式 public static void main(String[] args){ int n = cin.nextInt(); for (int i = 0; i < n;i++) { a[i]=new hh(cin.nextInt(),i);//輸入方式 } Arrays.sort(a, 0,n,cmp); System.out.println(a[n-1].v + " " + a[n-1].id); } }