Preguntas escritas de Huawei: encuentre la ruta más larga de una cadena

 

Descripción del título

Dadas n cadenas, organice las n cadenas en orden lexicográfico.

Ingrese la descripción:

Ingrese la primera línea como un entero positivo n (1≤n≤1000), las siguientes n líneas son n cadenas (string string≤100), la cadena contiene solo letras mayúsculas y minúsculas.

Descripción de salida:

Los datos salen en n líneas, y el resultado de salida es una cadena de caracteres organizada en orden lexicográfico.

Ejemplo 1

De entrada

9 
casquillo 
de 
gato 
tarjeta de 
dos 
demasiado 
hasta 
el barco 
de arranque

Salida

barco 
de arranque 
tapa de 
tarjeta de 
gato 
a 
también 
dos 
hasta

 Método uno:

#include <iostream>
#include <string>
#include <set>
using namespace std;


int main() {
    int n;
    cin >> n;
    multiset<string> se;
    for (int i = 0; i < n; ++i) {
        string s;
        cin >> s;
        se.insert(s);
    }
    multiset<string>::iterator ptr;
    for (ptr = se.begin(); ptr!=se.end(); ptr++) {
        cout << *ptr << endl;
    }
    return 0;
}

Método dos:

#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
using namespace std;


int main() {
    int n;
    cin >> n;
    vector<string> ve;
    for (int i = 0; i < n; ++i) {
        string s;
        cin >> s;
        ve.push_back(s);
    }
    sort(ve.begin(),ve.end());
    for (int j = 0; j < n; ++j) {
        cout << ve[j] << endl;
    }
    return 0;
}

 

Publicado 34 artículos originales · Me gusta 10 · Visitantes más de 10,000

Supongo que te gusta

Origin blog.csdn.net/weixin_41111088/article/details/104791362
Recomendado
Clasificación