SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
- 2차원 vector배열 함수로 넘기기, clear사용, 90도 회전시 좌표변경식
#include<iostream>
#include<vector>
#include<algorithm>
#include<string>
using namespace std;
int sun = 0;
int n;
vector<vector<string>> result(3);
void rotate(int index, vector<vector<int>>&arr) {
vector<vector<int>> temp_arr(10, vector<int>(10));
// 배열 90도 회전
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
temp_arr[i][j] = arr[abs(j - (n - 1))][i];
}
}
arr = temp_arr;
string tmp;
for (int i = 0; i < n; i++) {
for(int j=0; j<n; j++){
tmp += to_string(arr[i][j]);
}
result[index].push_back(tmp);
tmp.clear();
}
}
void run() {
sun++;
cin >> n;
vector<vector<int>> arr(n, vector<int>(n));
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
cin >> arr[i][j];
}
}
for (int i = 0; i < 3; i++) {
rotate(i, arr);
}
cout << "#" << sun << endl;
for (int i = 0; i < n; i++) {
for (int j = 0; j < 3; j++) {
cout << result[j][i] << " ";
}
cout << endl;
}
for (int i = 0; i < 3; i++) {
result[i].clear();
}
}
int main() {
int t;
cin >> t;
for (int i = 0; i < t; i++)
{
run();
}
return 0;
}
'APS > SWEA' 카테고리의 다른 글
1215. [S/W 문제해결 기본] 3일차 - 회문1 C++ (0) | 2021.08.27 |
---|---|
1218. [S/W 문제해결 기본] 4일차 - 괄호 짝짓기 C++ (0) | 2021.08.27 |
1209. [S/W 문제해결 기본] 2일차 - Sum C++ (0) | 2021.08.26 |
1208. [S/W 문제해결 기본] 1일차 - Flatten C++ (0) | 2021.08.26 |
1206. [S/W 문제해결 기본] 1일차 - View (0) | 2021.08.26 |