蓝桥杯摆烂第三天

小蓝给学生们组织了一场考试,卷面总分为 100 分,每个学生的得分都是一个 0 到 100 的整数。

请计算这次考试的最高分、最低分和平均分。

输入描述

输入的第一行包含一个整数 n (1≤n≤104),表示考试人数。

接下来 n 行,每行包含一个 0 至 100 的整数,表示一个学生的得分。

输出描述

输出三行。

第一行包含一个整数,表示最高分。

第二行包含一个整数,表示最低分。

第三行包含一个实数,四舍五入保留正好两位小数,表示平均分。

复制代码
import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        //在此输入您的代码...
      int n  =scan.nextInt();
        int max=0;
        int min=100;
      int sum=0;
        for(int i=0;i<n;i++){
          int j=scan.nextInt();
          if(max<j){
            max=j;
          }
          if(min>j){
            min=j;
          }
          sum+=j;

        }
         double avg=(double)sum/n;
         System.out.println(max);
         System.out.println(min);
         System.out.printf("%.2f",avg);
        scan.close();
    }
}

思路:用min表示范围0-100,max<j就交换,min>j就交换,注意两位小数表达方式同c语言,平均数用强转double或者定义输入n为double类型。


小蓝准备用 256MB 的内存空间开一个数组,数组的每个元素都是 32位 二进制整数,如果不考虑程序占用的空间和维护内存需要的辅助空间,请问256MB 的空间可以存储多少个 32 位二进制整数?

复制代码
import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        //在此输入您的代码...
     
        System.out.println(Math.abs(256*1024*1024*8/32));
        scan.close();
    }
}

思路:简单计算题

1MB = 1024KB 1KB = 1024字节(byte) 1字节 = 8位(bits),注意数值太大会变成负数,使用Math.abs()表示绝对值.

相关推荐
通信小呆呆3 小时前
当算法有了“五感”:多模态数据融合如何向人体感官协同学习?
人工智能·学习·算法·机器学习·机器人
benben0443 小时前
强化学习之DQN算法族(基于gymnasium开发)
算法
何以解忧,唯有..4 小时前
Go语言循环语句详解:for、range与循环控制
开发语言·算法·golang
想吃火锅10055 小时前
【leetcode】88.合并两个有序数组js
算法
生成论实验室6 小时前
机器人:一个自主运动的系统
人工智能·算法·语言模型·机器人·自动驾驶·agi·安全架构
Qres8216 小时前
算法复键——树状数组
数据结构·算法
H178535090966 小时前
SolidWorks第四部分_直接实体建模特征9_替换面原理
线性代数·算法·机器学习·3d建模·solidworks
dayuOK63076 小时前
写作卡壳怎么办?我的“5分钟启动法”
人工智能·职场和发展·自动化·新媒体运营·媒体
不会就选b6 小时前
算法日常・每日刷题--<二分查找>3
算法