File tree Expand file tree Collapse file tree 1 file changed +70
-0
lines changed Expand file tree Collapse file tree 1 file changed +70
-0
lines changed Original file line number Diff line number Diff line change 1+ class Solution {
2+ public:
3+ vector<vector<int >> sortMatrix (vector<vector<int >>& grid) {
4+ vector<vector<int >> ans;
5+ vector<int > t;
6+ int cnt = 1 ;
7+ int j=0 ;
8+ for (int i=grid.size ()-1 ;i>=0 ;i--){
9+ int p=i;
10+ while (j < grid.size () && p < grid.size ()){
11+ t.push_back (grid[p][j]);
12+ p++;
13+ j++;
14+ }
15+ sort (t.begin (), t.end ());
16+ reverse (t.begin (), t.end ());
17+ ans.push_back (t);
18+ t.clear ();
19+ j=0 ;
20+ }
21+ vector<vector<int >> a1;
22+ int r = 1 ;
23+ for (int k=1 ;k<grid.size ();k++){
24+ int q = 0 ;
25+ int d = r;
26+ while (q < grid.size () && d < grid.size ()){
27+ t.push_back (grid[q][d]);
28+ q++;
29+ d++;
30+ }
31+ sort (t.begin (), t.end ());
32+ a1.push_back (t);
33+ t.clear ();
34+ r++;
35+ }
36+ for (int i=0 ;i<a1.size ();i++){
37+ ans.push_back (a1[i]);
38+ }
39+ j = grid.size ()-1 ;
40+ int p = 0 ,q=0 ;
41+ for (int i=grid.size ()-1 ;i>=0 ;i--){
42+ int r = i;
43+ while (q < ans[p].size ()){
44+ grid[r][j] = ans[p][q];
45+ q++;
46+ r++;
47+ j++;
48+ }
49+ j=0 ;
50+ q=0 ;
51+ p++;
52+ }
53+ q=0 ;
54+ j=1 ;
55+ r=0 ;
56+ for (int i=1 ;i<grid.size ();i++){
57+ while (q < ans[p].size ()){
58+ grid[r][j] = ans[p][q];
59+ q++;
60+ r++;
61+ j++;
62+ }
63+ j=i+1 ;
64+ r=0 ;
65+ q=0 ;
66+ p++;
67+ }
68+ return grid;
69+ }
70+ };
You can’t perform that action at this time.
0 commit comments