프로그래머스 C++

프로그래머스 카펫 C++

Srff5123 2024. 11. 11. 18:21
728x90

 

갈색 격자의 수 brown, 노란색 격자의 수 yellow가 매개변수로 주어지고,

노란색 격자는 갈색 격자안에 있어야하며, 가로는 세로보다 길거나 같다

그때 가로와 세로의 크기를 배열에 담아 return하는 문제

 

테두리는 (가로 - 2) * (세로 - 2) = 노란색 식으로 찾는다.

 

yellow의 수가 1 이상이므로

반복문을 통해 세로의 길이를 3이상으로 계산하고,

총 격자의 수 / 세로와 같거나 작을떄까지만 반복하여

가로가 세로보다 길거나 같다는 조건을 만족시킨다.

 

그다음 if문을 통해 총 격자의 수 % 세로 ==  0 조건을 진행해

세로 길이를 구하고

 

위의 조건을 만족하면 세로의 길이를 구했기에 총격자의 수에 세로를 나누어 가로의 길이를 구해준다.

 

이를 반복하며 if문 조건 위의 테두리를 구하는 식을 이용해 해답을 찾는다

 

728x90