rotate-image 1.0.0
Rotate Image
Loading...
Searching...
No Matches
main.cpp
Go to the documentation of this file.
1#include <bits/stdc++.h>
2
3using namespace std;
4
6{
7private:
8 void transpose(vector<vector<int>>& matrix)
9 {
10 for (int i = 0; i < (int)matrix.size(); ++i)
11 {
12 for (int j = i + 1; j < (int)matrix.size(); ++j)
13 {
14 int tmp = matrix[i][j];
15 matrix[i][j] = matrix[j][i];
16 matrix[j][i] = tmp;
17 }
18 }
19 }
20
21 void vertical_reflection(vector<vector<int>>& matrix)
22 {
23 int n = (int)matrix.size();
24 for (int i = 0; i < n; ++i)
25 {
26 for (int j = 0; j < n / 2; ++j)
27 {
28 int tmp = matrix[i][j];
29 matrix[i][j] = matrix[i][n - 1 - j];
30 matrix[i][n - 1 - j] = tmp;
31 }
32 }
33 }
34
35public:
36 void print(vector<vector<int>>& matrix)
37 {
38 for (vector<int>& row: matrix)
39 {
40 for (int el: row)
41 cout << el << " ";
42 cout << endl;
43 }
44 }
45
46 void rotate(vector<vector<int>>& matrix)
47 {
48 transpose(matrix);
49 vertical_reflection(matrix);
50 }
51};
52
53int main()
54{
55 vector<vector<int>> matrix = {{1,2,3}, {4,5,6}, {7,8,9}};
56 Solution sol;
57 // sol.print(matrix);
58 sol.rotate(matrix);
59 sol.print(matrix);
60 return 0;
61}
void print(vector< vector< int > > &matrix)
Definition main.cpp:36
void rotate(vector< vector< int > > &matrix)
Definition main.cpp:46
void transpose(vector< vector< int > > &matrix)
Definition main.cpp:8
void vertical_reflection(vector< vector< int > > &matrix)
Definition main.cpp:21
int main()
Definition main.cpp:53