Colección de citas famosas - Slogan de motivación - Presentación de la biblioteca de diccionarios

Presentación de la biblioteca de diccionarios

El cartel original pidió usar C, lo cual es problemático. Sería mucho más conveniente si usaras C. No tengo nada que hacer, así que lo anoté y eché un vistazo.

# incluir ltiostream gt

# incluir ltmapgt

# incluir ltlistgt

# incluir ltstringgt

Usar espacio de nombres std

Estructura de información de nacimiento

{

int mes;

int día

Información de nacimiento ()

{

Mes = 0;

día = 0;

}

Operador booleano == (const. información de nacimiento amp; rhs) constante

{

if (mes == rhs . mes amp; amp día == día relativo)

{

Devuelve verdadero

}

Devuelve falso

}

Operador booleano lt (información constante de nacimiento y rhs) constante

{

si (mesltrhs.mes)

{

devuelve verdadero

}

else if (mes == RHS . mes)

{

if (día lt; rhs.day)

{

Devuelve verdadero

}

}

Devuelve falso

}

};

Estructura SameBirthInfo

{

int nCount

Lista lt cadena gtStrNoList

SameBirthInfo()

{

nCount = 0;

}

};

mapeo de typedef ltBirthInfo, resultado de SameBirthInfo gt;

int main()

{

int nstudent count = 0;

string strNo = ""

BirthInfo BirInfo

Resultado del resultado;

misma información de nacimiento misma información de nacimiento;

CIN gt; gtnStudentCount

while(nStudentCount- gt; 0)

{

CIN gt; gtstrNo gt gtBirInfo.month gt gtBirInfo.day

resultado::iterador ITER = resultado .find(BirInfo);

if (ITER == resultado . end())

{

//No encontrado

par lt resultado::Iterador, bool gtpins ret = Resultado insert (Resultado:: value_type (BirInfo, misma información de nacimiento));

if (pins ret . segundo)

{

pins ret . gt; segundo .ncount = 1;? //Registra que hay una persona en este cumpleaños.

pins ret. primero-gt; strnolist.push_back(strNo);? //Registra el número de estudiante de esta persona.

}

}

Otros

{

//Buscar

ITER - gt; second . ncount ; //Mismo número de personas en Amanome

ITER- gt;Segundo. strnolist.push_back(strNo); //Guarda el número de estudiante.

}

}

//Emitir todos los resultados

result::const_iterator cIter = result.begin();< /p >

while(cIter!= result.end()

{

//Primero genera el cumpleaños

cout lt ltcIter- gt; Un meslt lt""" lt ltcIter- gt; primer día;

//Importe todos los números de identificación de los estudiantes.

Lista lt string gt* const _ iterator cStrIter = cIter- gt; segundo. strnolist.begin();

mientras (cStrIter! = cIter- gt; segundo. StrNoList.end())

{

cout lt lt"" " lt ltcStrIter- gt; c_str();

cStrIter;

}

cout lt ltendl

cIter;

}

Devuelve 0;

}