1.我在蓝桥杯的编译系统上面跑了一遍,但是只有70分。应该是哪里的边界值没有弄好,如果有大神知道,望告知!
/*
* 问题描述
给出一个包含n个整数的数列,问整数a在数列中的第一次出现是第几个。
输入格式
第一行包含一个整数n。
第二行包含n个非负整数,为给定的数列,数列中的每个数都不大于10000。
第三行包含一个整数a,为待查找的数。
输出格式
如果a在数列中出现了,输出它第一次出现的位置(位置从1开始编号),否则输出-1。
样例输入
6
1 9 4 8 3 9
9
样例输出
2
数据规模与约定
1 <= n <= 1000。
* */
import java.util.Scanner;
public class FindInteger123 {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
int[] arr=new int[n];
for(int i=0;i<n;i++) {
arr[i]=sc.nextInt();
}
int m=sc.nextInt();
int ret=-1;
for(int i=0;i<n;i++) {
if(m==arr[i]) {
ret=i+1;
}
}
System.out.println(ret);
try {
} catch (Exception e){
}
finally {
sc.close();
}
}
}
2.给出n个数,找出这n个数的最大值,最小值,和。
/*
* 问题描述
给出n个数,找出这n个数的最大值,最小值,和。
输入格式
第一行为整数n,表示数的个数。
第二行有n个数,为给定的n个数,每个数的绝对值都小于10000。
输出格式
输出三行,每行一个整数。第一行表示这些数中的最大值,第二行表示这些数中的最小值,第三行表示这些数的和。
样例输入
5
1 3 -2 4 5
样例输出
5
-2
11
数据规模与约定
1 <= n <= 10000。
* */
import java.util.Scanner;
public class MinMaxSum {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
int[] arr=new int[n];
int tmp;
int sum=0;
for(int i=0;i<n;i++) {
arr[i]=sc.nextInt();
}
for(int i=0;i<n;i++) {
for(int j=0;j<n-i-1;j++) {
if(arr[j]>arr[j+1]) {
tmp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=tmp;
}
}
}
System.out.println(arr[arr.length-1]);
System.out.println(arr[0]);
for(int i=0;i<n;i++) {
sum=arr[i]+sum;
}
System.out.println(sum);
try {
} catch (Exception e){
}
finally {
sc.close();
}
}
}