[B] PAT clasificación digital

Descripción Asunto:

Dado a una serie de números enteros positivos, pulse la demanda de clasificación digital, y da salida a los cinco números siguientes:

A1 = 5 pueden ser números divisibles y los números pares;
A 2 = 5 será de más de 1 después de la adición digitales se realiza en el orden dado suma escalonada, es decir, calcular n 1-n 2 + n 3 ⋯ N4;
A3 = 5 es el número de otras 2 después de la I digital;
. un 4 es i = 3 número medio 5 después de la adición, una precisión de un lugar decimal;
a = 5 es distinto de la 5 el número 4 en los números más grandes.

Formatos de entrada:

Cada entrada comprende una prueba. Cada caso de prueba se da un primer número entero positivo de no más de 1.000 N y, a continuación, da la N no excede de 1.000 a ser entero positivo clasificada. Entre números separados por un espacio.

Los formatos de salida:

Para un entero dado N positivo, se calcula de acuerdo con A1 ~ A5 objeto de la solicitud y la salida de forma secuencial en una fila. Entre números separados por espacios, pero el final de la línea no puede tener el espacio extra.
Si un cierto tipo en el que el número no existe, la salida en la correspondiente posición N.

Ejemplo de entrada 1:

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

Muestra de Producto 1:

30 11 2 9.7 9

Ejemplo de entrada 2:

8 1 2 4 5 6 7 9 16

Muestra Producto 2:

N 11 2 N 9

Ideas de resolución de problemas:

Cada uno de una entrada digital, manipular, lo que se juzga, en consecuencia operación, nota el resultado final puede ser utilizado si-else

código:

#include<iostream>
#include<iomanip>
using namespace std;
int main() {
    int N,x,i=1;
    float c4=0;
    int c1=0,c2=0,c3=0,cn=0,c5=0;
    bool T1 = false,T2 = false,T3 = false,T4 = false,T5 = false;
    cin>>N;
    while(N--) {
        cin>>x;
        switch(x%5) {
            case 0:if(x%2==0) {
				c1+=x;T1=true;
				}
				break;
            case 1:c2+=(i*x);i=-i;T2=true;break;
            case 2:c3++;T3=true;break;
            case 3:c4+=x;cn++;T4=true;break;
            case 4:if(x>c5)c5=x;T5=true;break;
        }
    }
    (T1)?(cout<<c1<<" "):(cout<<"N ");
    (T2)?(cout<<c2<<" "):(cout<<"N ");
    (T3)?(cout<<c3<<" "):(cout<<"N ");
    (T4)?(cout<<fixed<<setprecision(1)<<c4/cn<<" "):(cout<<"N ");
    (T5)?(cout<<c5):(cout<<"N");
    return 0;
}
Publicado 55 artículos originales · alabanza ganado 30 · vistas 9801

Supongo que te gusta

Origin blog.csdn.net/chaifang0620/article/details/105024276
Recomendado
Clasificación