Pagini recente » Cod sursa (job #2458901) | Cod sursa (job #3307113) | Diferente pentru aib intre reviziile 12 si 26 | Cod sursa (job #3322949) | Cod sursa (job #3315077)
#include <cstring>
#include <iostream>
using namespace std;
int main() {
int a[101][101], i, j, n, m, fr[10001];
char c;
cin >> n >> m >> c;
for (i = 0; i < n; ++i) {
for (j = 0; j < m; ++j) {
int nr;
cin >> nr;
fr[nr]++;
}
}
if (c == '+') {
int val = 0;
for (j = 0; j < m; ++j)
for (i = 0; i < n; ++i) {
while (fr[val] == 0)
val++;
a[i][j] = val;
fr[val]--;
}
}
if (c == '-') {
int val = 1000;
for (j = 0; j < m; ++j)
for (i = 0; i < n; ++i) {
while (fr[val] == 0)
val++;
a[i][j] = val;
fr[val]--;
}
}
for (i = 0; i < n; ++i) {
for (j = 0; j < m; ++j)
cout << a[i][j] << " ";
cout << endl;
}
}
// Cerința
// Se dă o matrice cu n linii și m coloane și un caracter c care poate fi + sau
// -. Să se sorteze, după linii, matricea crescător dacă semnul este + sau
// descrescător dacă semnul este -.
// Sortarea matricei după coloane este rearanjarea elementelor astfel încât,
// parcurgând matricea pe coloane, de la stânga la dreapta și de sus în jos,
// elementele sunt în ordine crescătoare/descrescătoare.
// Date de intrare
// Programul citește de la tastatură numerele n și m și caracterul c, iar apoi n
// linii cu m numere naturale. Fiecare linie pe câte un rând, toate numerele de
// pe fiecare linie separate prin spații unul de celălalt.
// Date de ieșire
// Programul va afișa pe ecran matricea sortată conform cerinței, câte o linie a
// matricei pe o linie a ecranului, elementele fiecărei linii fiind separate
// prin câte un spațiu.
// Restricții și precizări
// 1 ≤ n ≤ m ≤ 100
// elementele matricei vor fi mai mici sau egale cu 1.000
// Exemplul 1:
// Intrare
// 5 4 +
// 2 4 1 3
// 9 8 7 6
// 20 19 18 16
// 30 29 124 12
// 59 21 0 3
// Ieșire
// 0 4 12 21
// 1 6 16 29
// 2 7 18 30
// 3 8 19 59
// 3 9 20 124
// Exemplul 2:
// Intrare
// 5 4 -
// 2 4 1 3
// 9 8 7 6
// 20 19 18 16
// 30 29 124 12
// 59 21 0 3
// Ieșire
// 124 20 9 3
// 59 19 8 3
// 30 18 7 2
// 29 16 6 1
// 21 12 4 0
// https://www.pbinfo.ro/probleme/2874/sortmatrixcol