蓝桥杯——BASIC-4——基础练习 数列特征
【摘要】 问题描述:给出n个数,找出这n个数的最大值,最小值,和。输入格式:第一行为整数n,表示数的个数。第二行有n个数,为给定的n个数,每个数的绝对值都小于10000。输出格式:输出三行,每行一个整数。第一行表示这些数中的最大值,第二行表示这些数中的最小值,第三行表示这些数的和。数据规模与约定:1 <= n <= 10000。分析:方法一,通过数组实现。创建一个数组,往数组中添加元素时顺便求和。然后...
问题描述:
给出n个数,找出这n个数的最大值,最小值,和。
输入格式:
第一行为整数n,表示数的个数。
第二行有n个数,为给定的n个数,每个数的绝对值都小于10000。
输出格式:
输出三行,每行一个整数。第一行表示这些数中的最大值,第二行表示这些数中的最小值,第三行表示这些数的和。
数据规模与约定:1 <= n <= 10000。
分析:
方法一,通过数组实现。创建一个数组,往数组中添加元素时顺便求和。然后用Arrays.sort()方法对数组排序,数组的首元素即是最小值,末元素即是最大值,直接输出即可。
方法一,通过数组实现。创建一个数组,往数组中添加元素时顺便求和。然后用Arrays.sort()方法对数组排序,数组的首元素即是最小值,末元素即是最大值,直接输出即可。
变量实现。将输入值存储到临时变量中,然后求和并与当前的最大值、最小值进行比较,若大于当前的最大值则将临时变量的值赋给新的最大值,小于当前的最小值则将临时变量的值赋给新的最小值。
代码如下:
package day;
import java.util.List;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;
public class day3 {
public static void main(String[] args) {
// TODO Auto-generated method stub
//基础练习 数列特征
System.out.println("输入整数n,表示数的个数");
Scanner scanner = new Scanner(System.in);
Integer n = scanner.nextInt();
System.out.println("给定n个数,每个数的绝对值都小于10000");
List<Integer> arrayList=new ArrayList<Integer>();
for(int i=0;i<n;i++) {
arrayList.add(scanner.nextInt());
}
System.out.println(Collections.max(arrayList));
System.out.println(Collections.min(arrayList));
System.out.println(arrayListSum(arrayList));
}
private static Integer arrayListSum(List<Integer> arrayList) {
Integer sum=0;
for(int i=0;i<arrayList.size();i++) {
sum+=arrayList.get(i);
}
return sum;
}
}
样例输入:
5
1 3 -2 4 5
1 3 -2 4 5
样例输出:
5
-2
11
-2
11
运行效果如下:
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)