A Biblioteca do Senhor Severino é um problema da categoria Strings, disponibilizo aqui três soluções.
Problema: 2137
Enunciado:
Em uma pacata cidade do interior, o senhor Severino decidiu montar a própria biblioteca, já que coleciona vários livros desde sua juventude. Como ele não sabe programar, pediu ajuda ao neto para criar um programa que cadastre e ordene seus livros pelo código. Porém, seu neto ainda está no ensino fundamental, e como sabe muito pouco de programação, acabou criando um programa que somente cadastra os livros, mas não os ordena. Desse modo, o senhor Severino recorreu a você, pois sabe de suas habilidades com programação. Sua tarefa é simples: ordenar os cadastros dos códigos dos livros.
Linguagem: C e C++
Código em C:
#include <stdlib.h> #include <stdio.h> #include <string.h> int compara(const void *p1, const void *p2) { return strcmp(p1, p2); } int main() { int n, i; char a[1000][5]; while (scanf("%d ", &n) != EOF) { for (i = 0; i < n; i++) scanf("%s", a[i]); qsort(a, n, 5, compara); for (i = 0; i < n; i++) printf("%s\n", a[i]); memset(a, 0, sizeof(a)); } return 0; }
Código em C++:
A cada iteração, todos os livros são armazenados como string no vector colection. Após todos serem armazenados, a função sort é usada para ordená-los e todos são impressos na saída.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | #include <iostream> #include <vector> #include <algorithm> using namespace std; int main() { int n; vector<string> colection; while(cin >> n){ colection.clear(); string book; while(n--){ cin >> book; colection.push_back(book); } sort(colection.begin(),colection.end()); for(int i=0; i<colection.size();i++){ cout << colection[i] << endl; } } return 0; } |
#include <algorithm> #include <iostream> #include <vector> using namespace std; int main() { int n, i; vector<string> a; string str; while (cin >> n) { for (i = 0; i < n; i++) { cin >> str; a.push_back(str); } sort(a.begin(), a.end()); for (i = 0; i < n; i++) cout << a.at(i) << endl; a.clear(); } return 0; }
Nenhum comentário:
Postar um comentário