#include <vector>
#include <algorithm>
#include <iostream>
#include <iomanip>

using namespace std;

vector<vector<int>> arr{
    {32,105,48,80,144,128,64,122,18,81},
    {66,129,113,17,94,78,90,51,104,34},
    {110,149,36,103,82,53,93,130,68,150},
    {41,19,124,61,85,159,115,57,72,101},
    {56,100,86,146,73,40,141,25,87,126},
    {151,71,94,15,125,76,54,99,39,140},
    {17,124,52,98,139,37,147,88,69,109},
    {35,128,67,30,93,123,50,138,21,97},
    {96,121,49,137,89,154,91,65,92,33},
    {-3, -21, 12, 45, 7, 43, 34, 89, 90, 100}   //это 10ая строка
};

int main(int argc, const char * argv[])
{
    int n = 10;
    vector<int> flat;
    for(int i = 0; i < n; ++i)
    for(int j = 0; j < n; ++j)
        flat.push_back(arr[i][j]);

    sort(flat.begin(),flat.end());

    for(int i = 0; i < n; ++i)
        copy_n(flat.begin()+i*n,n,arr[i].begin());

    for(auto a: arr)
    {
        for(auto b: a) cout << setw(4) << b << " ";
        cout << endl;
    }


}
