试题编号: | 201903-1 |
---|---|
试题名称: | 小中大 |
时间限制: | 1.0s |
内存限制: | 512.0MB |
问题描述: | |
方法1:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
double mid;
int k, min, max;
Scanner input = new Scanner(System.in);
int n = input.nextInt();
int num[] = new int[n];
for (int i = 0; i < n; i++) {
num[i] = input.nextInt();
}
min = num[0];
max = num[n - 1];
if (min > max) {
min = num[n - 1];
max = num[0];
}
k = n / 2;
if (n % 2 == 0) {
mid = (num[k] + num[k - 1]) / 2.0; //若除以整型mid则为整数
} else {
mid = num[k];
}
System.out.print(max + " ");
if(mid==(int)mid){ //判断mid是否有余数
System.out.print((int)mid);
}else {
System.out.print(mid);
}
System.out.print( " "+min);
input.close();
// Arrays.sort(num);
// for(int j=0;j<n;j++){
// System.out.print(num[j]+" ");
// System.out.println(Arrays.toString(num));
}
}
方法2:
import java.text.DecimalFormat;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
double mid;
int k, min, max;
Scanner input = new Scanner(System.in);
int n = input.nextInt();
int num[] = new int[n];
for (int i = 0; i < n; i++) {
num[i] = input.nextInt();
}
min = num[0];
max = num[n - 1];
if (min > max) {
min = num[n - 1];
max = num[0];
}
k = n / 2;
if (n % 2 == 0) {
mid = (num[k] + num[k - 1]) / 2.0;
} else {
mid = num[k];
}
System.out.print(max + " "+new DecimalFormat("0.#").format(mid)+ " "+min); //搜索使用关键词:java格式化
input.close();
// Arrays.sort(num);
// for(int j=0;j<n;j++){
// System.out.print(num[j]+" ");
// System.out.println(Arrays.toString(num));
}
}
原题链接: http://118.190.20.162/view.page?gpid=T89