Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- #include <iomanip>
- using namespace std;
- int **create (int &n, ifstream &inp)
- {
- inp >> n;
- int **a = new int *[n];
- for(int i = 0; i < n; i++)
- {
- a[i] = new int [n];
- for(int j = 0; j < n; j++)
- inp >> a[i][j];
- }
- return a;
- }
- void **print (int n, int **mus, ofstream &out)
- {
- for(int i = 0; i < n; i++, out << endl)
- for(int j = 0; j < n; j++)
- out << mus[i][j] << " ";
- return 0;
- }
- void sort(int*mus, int n)
- {
- int t;
- int i, j;
- for( i = 1; i < n; ++i) {
- t = mus[i];
- for(j = i-1; (j >= 0) && (t > mus[j]); j--)
- mus[j+1] = mus[j];
- mus[j+1] = t;
- }
- }
- int main()
- {
- int **mus;
- int n;
- int k = 0;
- ifstream inp ("input.txt");
- mus = create(n, inp);
- int* b = new int [n];
- for( int j = 1; j < n-1; j++)
- {
- k = 0;
- for (int i = 0; i < n-j; i++)
- {
- b[i] = mus[i][j+i];
- k++;
- }
- sort(b, k);
- for (int i = 0; i < k; i++)
- mus[i][j+i] = b[i];
- }
- delete b;
- int* c = new int [n];
- for(int j = 1; j < n-1; j++)
- {
- k=0;
- for(int i = 0; i < n-j ; i++)
- {
- c[i] = mus[i+j][i];
- k++;
- }
- sort(c,k);
- for(int i = 0; i < k; i++)
- mus[i+j][i] = c[i];
- }
- delete c;
- ofstream out ("output.txt");
- print(n, mus, out);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement