蓝桥杯摆烂第三天

小蓝给学生们组织了一场考试,卷面总分为 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()表示绝对值.

相关推荐
Xの哲學36 分钟前
Linux流量控制: 内核队列的深度剖析
linux·服务器·算法·架构·边缘计算
yaoh.wang1 小时前
力扣(LeetCode) 88: 合并两个有序数组 - 解法思路
python·程序人生·算法·leetcode·面试·职场和发展·双指针
LYFlied2 小时前
【每日算法】 LeetCode 56. 合并区间
前端·算法·leetcode·面试·职场和发展
艾醒2 小时前
大模型原理剖析——多头潜在注意力 (MLA) 详解
算法
ZHSH.2 小时前
2026蓝桥杯备赛 | 赛事介绍及python基础(未完)
python·蓝桥杯·数据结构与算法
艾醒2 小时前
大模型原理剖析——DeepSeek-V3深度解析:671B参数MoE大模型的技术突破与实践
算法
jifengzhiling3 小时前
零极点对消:原理、作用与风险
人工智能·算法
鲨莎分不晴4 小时前
【前沿技术】Offline RL 全解:当强化学习失去“试错”的权利
人工智能·算法·机器学习
XFF不秃头4 小时前
力扣刷题笔记-全排列
c++·笔记·算法·leetcode