美文网首页
PAT乙级----数字分类

PAT乙级----数字分类

作者: YangLiuSS | 来源:发表于2017-12-11 01:08 被阅读0次

    题目描述

    给定一系列正整数,请按要求对数字进行分类,并输出以下5个数字:

    A1 = 能被5整除的数字中所有偶数的和;

    A2 = 将被5除后余1的数字按给出顺序进行交错求和,即计算n1-n2+n3-n4...;

    A3 = 被5除后余2的数字的个数;

    A4 = 被5除后余3的数字的平均数,精确到小数点后1位;

    A5 = 被5除后余4的数字中最大数字。

    输入描述:

    每个输入包含1个测试用例。每个测试用例先给出一个不超过1000的正整数N,随后给出N个不超过1000的待分类的正整数。数字间以空格分隔。

    输出描述:

    对给定的N个正整数,按题目要求计算A1~A5并在一行中顺序输出。数字间以空格分隔,但行末不得有多余空格。

    若其中某一类数字不存在,则在相应位置输出“N”。

    输入例子:

    13 1 2 3 4 5 6 7 8 9 10 20 16 18

    输出例子:

    30 11 2 9.7 9

    # -*- coding: utf-8 -*-
    
    # @Author  : ly
    
    input_list =raw_input()
    
    num_list = input_list.split(" ")
    
    int_num_list = num_list[1:]
    
    # print int_num_list
    
    A1 = A2 = A3 = A5 =0
    
    A4 =0.0
    
    db =1
    
    n =0
    
    fornuminint_num_list:
    
    num =int(num)
    
    A_num = num %5
    
    if(A_num ==0)and(num %2==0):
    
    A1 += num
    
    elif(A_num ==1):
    
    A2 += num * (-1)**(db +1)
    
    db +=1
    
    elif(A_num ==2):
    
    A3 +=1
    
    elif(A_num ==3):
    
    A4 += num
    
    n +=1
    
    elif(A_num ==4)and(A5 < num):
    
    A5 = num
    
    ifn >0:
    
    A4 =round(A4 / n,1)
    
    printA1ifA1is not0else'N', A2ifA2is not0else'N', A3ifA3is not0else'N', A4ifA4is not0.0else'N', A5ifA5is not0else'N' 
    

    相关文章

      网友评论

          本文标题:PAT乙级----数字分类

          本文链接:https://www.haomeiwen.com/subject/vdpbixtx.html