PAT乙级算法-1012(JAVA实现)
注意事项:
在计算A2的时候--可能出现相加正好为0的情况
学会整数相除得小数(四舍五入后得结果)---String.format("%.2f",);//保留有效小数后两位
public class P1012 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
String str=sc.nextLine();//接收到带有特殊字符的字符串
String[] arr=str.split(" ");//对字符串进行切割成数组
int n=1;//进行A2的计算
int A1=0;
int A2=0;
int A3=0;
int A4=0;
int A5=-1;
int t=0;//记录A4的个数
for (int i = 0; i <arr.length ; i++) {
if (i==0){
continue;
}
int num=Integer.parseInt(arr[i]);//取出数据
if ((num%5==0)&&(num%2==0)){
A1=A1+num;
}
if (num%5==1){
if (n%2==0){
A2+=(-num);//偶数进行相减
}else {
A2+=num;//偶数进行相加
}
n++;
}
if (num%5==2){
A3++;
}
if (num%5==3){
A4+=num;
t++;
}
if (num%5==4){
if (num>A5){
A5=num;
}
}
}
//三目运算--完美解决输出格式问题
System.out.print((A1>0?A1:"N")+" "+((A2!=0||n>1)?A2:"N")+" "+(A3>0?A3:"N")+" "+(A4>0?String.format("%.1f", ((double)A4/(double)t)):"N")+" "+(A5>0?A5:"N"));
}
}
写在最后
有疑问或者更好的建议欢迎留言!每天都会进行回复