#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
int solution(int** arr, int arr_row_len, int arr_col_len) {
int N = 10;
for (int i = 0; i < N; i++) {
for (int j = 0; j < N; j++) {
if (arr[i][j] == 1) {
int length = 0;
for (int w = 2; w < 11; w++) {
bool is_square = true;
for (int di = i; di < [[quiz]]; di++) {
for (int dj = j; dj < [[quiz]]; dj++) {
if ([[quiz]]) {
is_square = false;
break;
}
}
if (!is_square) {
break;
}
}
if (is_square) {
length = w;
}
else {
break;
}
}
if (length > 1) {
for (int di = i; di < [[quiz]]; di++) {
for (int dj = j; dj < [[quiz]]; dj++) {
arr[di][dj] = 0;
}
}
}
}
}
}
for (int i = 0; i < N; i++) {
for (int j = 0; j < N; j++) {
if (arr[i][j] == 1) {
return 0;
}
}
}
return 1;
}
int main() {
int arr1_row_len = 10;
int arr1_col_len = 10;
int** arr1 = (int**)malloc(sizeof(int*) * arr1_row_len);
for(int i = 0; i < arr1_row_len; i++)
arr1[i] = (int*)malloc(sizeof(int) * arr1_col_len);
arr1[0][0] = 0;
arr1[0][1] = 0;
arr1[0][2] = 0;
arr1[0][3] = 0;
arr1[0][4] = 0;
arr1[0][5] = 0;
arr1[0][6] = 0;
arr1[0][7] = 0;
arr1[0][8] = 0;
arr1[0][9] = 0;
arr1[1][0] = 0;
arr1[1][1] = 0;
arr1[1][2] = 0;
arr1[1][3] = 0;
arr1[1][4] = 0;
arr1[1][5] = 0;
arr1[1][6] = 0;
arr1[1][7] = 0;
arr1[1][8] = 0;
arr1[1][9] = 0;
arr1[2][0] = 0;
arr1[2][1] = 0;
arr1[2][2] = 0;
arr1[2][3] = 0;
arr1[2][4] = 0;
arr1[2][5] = 0;
arr1[2][6] = 1;
arr1[2][7] = 1;
arr1[2][8] = 1;
arr1[2][9] = 1;
arr1[3][0] = 0;
arr1[3][1] = 0;
arr1[3][2] = 1;
arr1[3][3] = 1;
arr1[3][4] = 1;
arr1[3][5] = 0;
arr1[3][6] = 1;
arr1[3][7] = 1;
arr1[3][8] = 1;
arr1[3][9] = 1;
arr1[4][0] = 0;
arr1[4][1] = 0;
arr1[4][2] = 1;
arr1[4][3] = 1;
arr1[4][4] = 1;
arr1[4][5] = 0;
arr1[4][6] = 1;
arr1[4][7] = 1;
arr1[4][8] = 1;
arr1[4][9] = 1;
arr1[5][0] = 0;
arr1[5][1] = 0;
arr1[5][2] = 1;
arr1[5][3] = 1;
arr1[5][4] = 1;
arr1[5][5] = 0;
arr1[5][6] = 1;
arr1[5][7] = 1;
arr1[5][8] = 1;
arr1[5][9] = 1;
arr1[6][0] = 0;
arr1[6][1] = 0;
arr1[6][2] = 0;
arr1[6][3] = 0;
arr1[6][4] = 0;
arr1[6][5] = 0;
arr1[6][6] = 0;
arr1[6][7] = 0;
arr1[6][8] = 0;
arr1[6][9] = 0;
arr1[7][0] = 0;
arr1[7][1] = 0;
arr1[7][2] = 0;
arr1[7][3] = 1;
arr1[7][4] = 1;
arr1[7][5] = 1;
arr1[7][6] = 1;
arr1[7][7] = 0;
arr1[7][8] = 0;
arr1[7][9] = 0;
arr1[8][0] = 0;
arr1[8][1] = 0;
arr1[8][2] = 0;
arr1[8][3] = 1;
arr1[8][4] = 1;
arr1[8][5] = 1;
arr1[8][6] = 1;
arr1[8][7] = 0;
arr1[8][8] = 0;
arr1[8][9] = 0;
arr1[9][0] = 0;
arr1[9][1] = 0;
arr1[9][2] = 0;
arr1[9][3] = 1;
arr1[9][4] = 1;
arr1[9][5] = 1;
arr1[9][6] = 1;
arr1[9][7] = 0;
arr1[9][8] = 0;
arr1[9][9] = 0;
int ret1 = solution(arr1, arr1_row_len, arr1_col_len);
// [실행] 버튼을 누르면 출력 값을 볼 수 있습니다.
printf("solution 함수의 반환 값은 %d입니다.\\n", ret1);
int arr2_row_len = 10;
int arr2_col_len = 10;
int** arr2 = (int**)malloc(sizeof(int*) * arr2_row_len);
for(int i = 0; i < arr2_row_len; i++)
arr2[i] = (int*)malloc(sizeof(int) * arr2_col_len);
arr2[0][0] = 0;
arr2[0][1] = 0;
arr2[0][2] = 0;
arr2[0][3] = 0;
arr2[0][4] = 0;
arr2[0][5] = 0;
arr2[0][6] = 0;
arr2[0][7] = 0;
arr2[0][8] = 0;
arr2[0][9] = 0;
arr2[1][0] = 0;
arr2[1][1] = 0;
arr2[1][2] = 0;
arr2[1][3] = 0;
arr2[1][4] = 0;
arr2[1][5] = 0;
arr2[1][6] = 0;
arr2[1][7] = 1;
arr2[1][8] = 1;
arr2[1][9] = 1;
arr2[2][0] = 0;
arr2[2][1] = 1;
arr2[2][2] = 1;
arr2[2][3] = 1;
arr2[2][4] = 1;
arr2[2][5] = 1;
arr2[2][6] = 0;
arr2[2][7] = 1;
arr2[2][8] = 1;
arr2[2][9] = 1;
arr2[3][0] = 0;
arr2[3][1] = 1;
arr2[3][2] = 1;
arr2[3][3] = 1;
arr2[3][4] = 1;
arr2[3][5] = 1;
arr2[3][6] = 0;
arr2[3][7] = 1;
arr2[3][8] = 1;
arr2[3][9] = 1;
arr2[4][0] = 0;
arr2[4][1] = 1;
arr2[4][2] = 1;
arr2[4][3] = 1;
arr2[4][4] = 1;
arr2[4][5] = 1;
arr2[4][6] = 0;
arr2[4][7] = 1;
arr2[4][8] = 1;
arr2[4][9] = 1;
arr2[5][0] = 0;
arr2[5][1] = 1;
arr2[5][2] = 1;
arr2[5][3] = 1;
arr2[5][4] = 1;
arr2[5][5] = 1;
arr2[5][6] = 0;
arr2[5][7] = 1;
arr2[5][8] = 1;
arr2[5][9] = 1;
arr2[6][0] = 0;
arr2[6][1] = 1;
arr2[6][2] = 1;
arr2[6][3] = 1;
arr2[6][4] = 1;
arr2[6][5] = 1;
arr2[6][6] = 0;
arr2[6][7] = 1;
arr2[6][8] = 1;
arr2[6][9] = 1;
arr2[7][0] = 0;
arr2[7][1] = 1;
arr2[7][2] = 1;
arr2[7][3] = 1;
arr2[7][4] = 1;
arr2[7][5] = 0;
arr2[7][6] = 0;
arr2[7][7] = 0;
arr2[7][8] = 0;
arr2[7][9] = 0;
arr2[8][0] = 0;
arr2[8][1] = 1;
arr2[8][2] = 1;
arr2[8][3] = 1;
arr2[8][4] = 1;
arr2[8][5] = 0;
arr2[8][6] = 0;
arr2[8][7] = 0;
arr2[8][8] = 0;
arr2[8][9] = 0;
arr2[9][0] = 0;
arr2[9][1] = 0;
arr2[9][2] = 0;
arr2[9][3] = 0;
arr2[9][4] = 0;
arr2[9][5] = 0;
arr2[9][6] = 0;
arr2[9][7] = 0;
arr2[9][8] = 0;
arr2[9][9] = 0;
int ret2 = solution(arr2, arr2_row_len, arr2_col_len);
// [실행] 버튼을 누르면 출력 값을 볼 수 있습니다.
printf("solution 함수의 반환 값은 %d입니다.\\n", ret2);
int arr3_row_len = 10;
int arr3_col_len = 10;
int** arr3 = (int**)malloc(sizeof(int*) * arr3_row_len);
for(int i = 0; i < arr3_row_len; i++)
arr3[i] = (int*)malloc(sizeof(int) * arr3_col_len);
arr3[0][0] = 0;
arr3[0][1] = 0;
arr3[0][2] = 0;
arr3[0][3] = 0;
arr3[0][4] = 0;
arr3[0][5] = 0;
arr3[0][6] = 0;
arr3[0][7] = 0;
arr3[0][8] = 0;
arr3[0][9] = 0;
arr3[1][0] = 0;
arr3[1][1] = 0;
arr3[1][2] = 0;
arr3[1][3] = 0;
arr3[1][4] = 0;
arr3[1][5] = 0;
arr3[1][6] = 0;
arr3[1][7] = 1;
arr3[1][8] = 1;
arr3[1][9] = 1;
arr3[2][0] = 0;
arr3[2][1] = 1;
arr3[2][2] = 1;
arr3[2][3] = 1;
arr3[2][4] = 1;
arr3[2][5] = 1;
arr3[2][6] = 0;
arr3[2][7] = 1;
arr3[2][8] = 1;
arr3[2][9] = 1;
arr3[3][0] = 0;
arr3[3][1] = 1;
arr3[3][2] = 1;
arr3[3][3] = 1;
arr3[3][4] = 1;
arr3[3][5] = 1;
arr3[3][6] = 0;
arr3[3][7] = 1;
arr3[3][8] = 1;
arr3[3][9] = 1;
arr3[4][0] = 0;
arr3[4][1] = 1;
arr3[4][2] = 1;
arr3[4][3] = 1;
arr3[4][4] = 1;
arr3[4][5] = 1;
arr3[4][6] = 0;
arr3[4][7] = 0;
arr3[4][8] = 1;
arr3[4][9] = 1;
arr3[5][0] = 0;
arr3[5][1] = 1;
arr3[5][2] = 1;
arr3[5][3] = 1;
arr3[5][4] = 1;
arr3[5][5] = 1;
arr3[5][6] = 0;
arr3[5][7] = 0;
arr3[5][8] = 1;
arr3[5][9] = 1;
arr3[6][0] = 0;
arr3[6][1] = 1;
arr3[6][2] = 1;
arr3[6][3] = 1;
arr3[6][4] = 1;
arr3[6][5] = 1;
arr3[6][6] = 0;
arr3[6][7] = 0;
arr3[6][8] = 0;
arr3[6][9] = 0;
arr3[7][0] = 0;
arr3[7][1] = 1;
arr3[7][2] = 1;
arr3[7][3] = 1;
arr3[7][4] = 0;
arr3[7][5] = 0;
arr3[7][6] = 0;
arr3[7][7] = 0;
arr3[7][8] = 0;
arr3[7][9] = 0;
arr3[8][0] = 0;
arr3[8][1] = 1;
arr3[8][2] = 1;
arr3[8][3] = 1;
arr3[8][4] = 0;
arr3[8][5] = 0;
arr3[8][6] = 0;
arr3[8][7] = 0;
arr3[8][8] = 0;
arr3[8][9] = 0;
arr3[9][0] = 0;
arr3[9][1] = 1;
arr3[9][2] = 1;
arr3[9][3] = 1;
arr3[9][4] = 0;
arr3[9][5] = 0;
arr3[9][6] = 0;
arr3[9][7] = 0;
arr3[9][8] = 0;
arr3[9][9] = 0;
int ret3 = solution(arr3, arr3_row_len, arr3_col_len);
// [실행] 버튼을 누르면 출력 값을 볼 수 있습니다.
printf("solution 함수의 반환 값은 %d입니다.\\n", ret3);
}