참치코더의 꿈 메모장

알고리즘 95일차 - 프로그래머스 기출 문제(JAVA) / 카펫 본문

잡다한 웹지식

알고리즘 95일차 - 프로그래머스 기출 문제(JAVA) / 카펫

참치깡 2025. 8. 22. 12:00
728x90

전체 코드 부분

 

- 카펫의 가로와 세로의 크기를 구하는 문제이다.

 

- 전체의 길이는 brown과 yellow 타일의 합과 같고 전체의 길이는 w * h = total 이다.

 

- 노란색 타일을 전부 감쌀려면 최소 3이상 높이의 타일이 필요하므로 3으로 시작하는 for문을 사용해서 

  total을 3이상의 값으로 나눈 나머지가 0이라면 width값을 알수 있다.

 

- 여기서 노란색의 타일값을 구하려면 위 아래 감싸고 있는 가장 끝단은 무조건 갈색이므로, height에서 - 2

  가로에서 가장 끝에 있는 타일은 갈색이므로 -2를 해주어서 곱한 값이 노란 타일의 넓이 값이 된다.

 

- 이렇게 구한 경우에서 문제에서는 가로의 길이가 세로와 같거나 가로가 더 긴 조건을 찾으라고 했으므로

  width와 height의 최댓값을 가로 width와 height의 최솟값을 세로로해서 배열로 반환한다면 정답을 얻을 수 있다. ^^

 

https://school.programmers.co.kr/questions/90148

 

프로그래머스

SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

728x90
Comments