1036 Chicos vs Chicas (25) 分
Esta vez se le pide que diga la diferencia entre el grado más bajo de todos los estudiantes de sexo masculino y el grado más alto de todos los estudiantes de sexo femenino.
Especificación de entrada:
Cada archivo de entrada contiene un caso de prueba. Cada caja contiene un número entero positivo N, seguido de N líneas de información del estudiante. Cada línea contiene el nombre del estudiante, género, ID y grado, separadas por un espacio, donde nombre y ID son cadenas de no más de 10 caracteres, sin espacio, el género es F (hembra) o M (hombre), y el grado es un número entero entre 0 y 100. se garantiza que todos los grados son distintos.
Especificación de la salida:
Para cada caso de prueba, la salida en 3 líneas. La primera línea da el nombre y el ID del estudiante con el más alto grado, y la segunda línea da la del estudiante masculino con el grado más bajo. La tercera línea da la diferencia de grado
F -Grado M Si un tal tipo de estudiante no está presente, la salida Ausente en la línea correspondiente, y la salida de NA en la tercera línea en su lugar.
Ejemplo de entrada 1:
3
Joe M Math990112 89
Mike M CS991301 100
Mary F EE990830 95
Salida de muestra 1:
María EE990830
Joe Math990112
6
Ejemplo de entrada 2:
1
Jean M AA980920 60
Salida de muestra 2:
Ausente
Jean AA980920
NA
solución:
- Encuentra las mayores puntuaciones de las mujeres. Y las puntuaciones varones más pequeños. Y la salida en el formato.
#include <string>
#include <iostream>
using namespace std;
struct People{
string name;
string couse;
int grade;
}temp,female,male;
int main(){
int n;
cin >> n;
female.name="";female.grade=0;
male.name="";male.grade=101;
string sex;
while(n--!=0){
cin>>temp.name >> sex >> temp.couse >>temp.grade;
if(sex=="M"&&temp.grade<male.grade){
male.name=temp.name;
male.couse=temp.couse;
male.grade=temp.grade;
}else if(sex=="F"&&temp.grade>female.grade){
female.name=temp.name;
female.couse=temp.couse;
female.grade=temp.grade;
}
}
if(female.name==""){
cout << "Absent" <<endl;
}else cout << female.name <<" " <<female.couse <<endl;
if(male.name==""){
cout << "Absent" <<endl;
}else cout <<male.name <<" "<< male.couse << endl;
if(female.name==""||male.name==""){
cout << "NA" ;
}else cout << female.grade-male.grade;
return 0;
}