1.猜数字

1.猜数字_第1张图片
image.png
import java.util.Scanner;
   public class CaiShuZi {
        public static void main(String[] args) {
            Scanner s = new Scanner(System.in);
            int a = s.nextInt();
            String myarr[][] = new String[a][2]; //存放名字,数字
            String[] d = new String[a];       //单独存放名字
            int[] j = new int[a];            //存放每个数字平均值的一半
            int[] z = new int[a];            //存放转为整型后的数字
            int sum = 0;            // 求和
            for (int i = 0; i < a; i++) {
                for (int k = 0; k < 2; k++) {
                    myarr[i][k] = s.next(); // 输入值
                }
            }
            for (int i = 0; i < a; i++) {  //将数字,名字分开存储
                z[i] = Integer.parseInt(myarr[i][1]); // 将字符串型的数组转变为整型赋值给 z
                sum += z[i]; // 求和
                d[i] = myarr[i][0]; // 将人的名字存储进一维数组,方便输出
            }
            int avg = (sum / a) / 2; // 求平均值一半
            for (int i = 0; i < a; i++) {
                j[i] = Math.abs(avg - z[i]); // 将平均值一半与数值相减,存入 j 方便比较
            }
            int min = j[0];
            int c = 0;      
            for (int i = 0; i < d.length; i++) { // 求出最小值
                if (min > j[i]) {
                    min = j[i];
                    c = i;
                }
            }
            System.out.println(avg + " " + d[c]);
        }
    }

你可能感兴趣的:(1.猜数字)