Se dă un vector cu n
elemente numere întregi.
Cerinţa
Să se ordoneze crescător elementele unui vector crescător după suma cifrelor.
Date de intrare
Fişierul de intrare sortcif.in
conţine pe prima linie numărul n
si pe a doua linie n
numere întregi separate prin spaţii.
Date de ieşire
Fişierul de ieşire sortcif.out
va conţine pe prima linie cele n
elemente ale vectorului, ordonate conform cerinței, separate printr-un spațiu.
Restricţii şi precizări
0 < n ≤ 100
- valoarea absolută a numerelor de pe a doua linie a fişierului de intrare va fi mai mică decât
2
30
.
Exemplu
sortcif.in
6 89 22 91 4005 51 721
sortcif.out
22 51 4005 91 721 89
Cum e corect?
cout < "As la info";
cout << "As la info";
cout >> "As la info";
Felicitări! Poți mai mult?
Avem sute de probleme pentru tine, fiecare cu explicații ușor de înțeles.
Greșit, dar nu-i bai!
Antrenează-te cu sutele de probleme pe care ți le-am pregătit. Îți explicăm fiecare problemă în parte.
Rezolvare
Iată rezolvarea de 100 de puncte pentru problema SortCif:
#include <fstream>
#include <iostream>
#include <algorithm>
using namespace std;
ifstream fin("sortcif.in");
ofstream fout("sortcif.out");
int n, a[105];
int sumcif(int n){
int s=0;
while(n)
s+=n%10, n/=10;
return s;
}
bool maimic(int a,int b){
return sumcif(a)<sumcif(b);
}
int main(){
fin >> n;
for(int i=0;i<n;++i)
fin >> a[i];
sort(a,a+n,maimic);
for(int i=0 ; i<n ; ++i)
fout << a[i] << " ";
return 0;
}
Atenție
Enunțurile afișate pe această pagină aparțin exclusiv site-ului PbInfo. Astfel, pentru ștergerea conținutului, puteți să ne contactați la adresa .
Rezolvarea problemei #130 SortCif
Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #130 SortCif de pe PbInfo.ro. Atenție: nu încurajăm copiatul codului! Totuși, credem cu tărie că analizarea unei soluții corecte este o metodă foarte ușoară de a învăța informatică, astfel că oferim sursele pentru peste 1500 de probleme de pe platforma PbInfo.ro.
Pentru rezolvări PbInfo de la peste 1500 de probleme, vă invităm să intrați pe site-ul nostru!