https://programmers.co.kr/learn/courses/30/lessons/42842
코딩테스트 연습 - 카펫
Leo는 카펫을 사러 갔다가 아래 그림과 같이 중앙에는 노란색으로 칠해져 있고 테두리 1줄은 갈색으로 칠해져 있는 격자 모양 카펫을 봤습니다. Leo는 집으로 돌아와서 아까 본 카펫의 노란색과
programmers.co.kr
S = w*h
yellow = (w-2) * (h-2)
brown = (w*h) - yellow
공식을 적용해서 풀었다.
main포함 코드
#include <vector>
#include <iostream>
#include <string>
using namespace std;
vector<int> solution(int brown, int yellow) {
vector<int> answer;
int w, h, S;
S = yellow+brown;
for(int i=3;i<S/2;i++){
if(S == i*(S/i)) {
h = i;
w = S/i;
if( (w-2)*(h-2) == yellow )break;
}
}
answer.push_back(w);
answer.push_back(h);
return answer;
}
int main(int argc, const char *argv[])
{
int brown = 24;
int yellow = 24;
solution(brown, yellow);
return 0;
}
'코딩테스트 연습 > programmers' 카테고리의 다른 글
[Programmers]탐욕법 > 섬연결하기 (0) | 2022.01.25 |
---|---|
[Programmers]탐욕법 > 큰수만들기 (0) | 2022.01.22 |
[Programmers]완전탐색 > 소수찾기(c++) (0) | 2022.01.20 |
[Programmers] 깊이/너비 우선 탐색(DFS/BFS) > 여행경로(c++) (0) | 2022.01.17 |
[Programmers] 깊이/너비 우선 탐색(DFS/BFS) > 단어 변환(c++) (0) | 2022.01.13 |