https://school.programmers.co.kr/learn/courses/30/lessons/42842
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
public int calculate(int brown, int yellow, int height) { int width = yellow + 2; if (brown == width*2 + height*2) { return width; } return 0; }
높이를 1 ~ yellow까지 높여가면서 계산한 크기와 brown의 크기가 일치했을 때 가로 길이를 return
그리고 가로와 세로의 겹치는 두 부분을 세로에 더해주어 정답으로 return
class Solution { public int[] solution(int brown, int yellow) { int[] answer = new int[2]; int width = 0; int height = 0; if (yellow == 1) { width = calculate(brown, yellow, 1); height = 3; } for (int i = 1; i < yellow; i++) { width = calculate(brown, yellow/i + yellow%i, i); if (width != 0) { height = i + 2; break; } } answer[0] = width; answer[1] = height; return answer; } public int calculate(int brown, int yellow, int height) { int width = yellow + 2; if (brown == width*2 + height*2) { return width; } return 0; } }
'Programmers' 카테고리의 다른 글
[프로그래머스][JAVA]Lv. 2 - 큰 수 만들기 (0) | 2023.06.18 |
---|---|
[프로그래머스][JAVA]Lv. 2 - 조이스틱 (0) | 2023.06.18 |
[프로그래머스][JAVA]Lv. 2 - 소수 찾기 (0) | 2023.06.12 |
[프로그래머스][JAVA]Lv. 2 - H-Index (0) | 2023.05.18 |
[프로그래머스][JAVA]Lv. 2 - 더 맵게 (0) | 2023.05.18 |