C언어/문제풀다 하나씩
또 톱니바퀴 돌리기 문제
mcdn
2020. 5. 13. 14:13
반응형
#include <iostream>
using namespace std;
int isitSame(int arr[3][3], int brr[3][3]) {
for (int i = 0; i < 3;i++) {
for (int j = 0; j < 3;j++) {
if (arr[i][j] != brr[i][j]) {
return 0;
}
}
}
return 1;
}
void turn(int arr[3][3]) {
int result[3][3];
result[2][0] = arr[0][0];
result[1][0] = arr[0][1];
result[0][0] = arr[0][2];
result[2][1] = arr[1][0];
result[1][1] = arr[1][1];
result[0][1] = arr[1][2];
result[2][2] = arr[2][0];
result[1][2] = arr[2][1];
result[0][2] = arr[2][2];
for (int i = 0; i < 3;i++) {
for (int j = 0; j < 3;j++) {
arr[i][j] = result[i][j];
}
}
//cout << "1";
return;
}
int main() {
int arr[3][3];
int brr[3][3];
for (int i = 0; i < 3;i++) {
for (int j = 0; j < 3;j++) {
cin >> arr[i][j];
}
}
for (int i = 0; i < 3;i++) {
for (int j = 0; j < 3;j++) {
cin >> brr[i][j];
}
}
int circle = 0;
int cnt = isitSame(arr, brr); // 0 is not same
if (cnt == 1) {
cout << circle; // 0
return 0;
}
while (not cnt) {
turn(arr);
cnt = isitSame(arr, brr);
circle++;
}
cout << circle;
}
result[1][1] 를 설정 안해서
계속 비어 있게 되어 에러남
;;;
입력 예제
1 1 1
2 2 2
3 3 3
1 2 3
1 2 3
1 2 3
출력 결과
1
반응형