알고리즘 문제 풀이/프로그래머스

[프로그래머스] (JAVA) Lv2 카펫

2023. 7. 2. 13:51
목차
  1. 문제
  2. 나의 풀이

문제

https://school.programmers.co.kr/learn/courses/30/lessons/42842#

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

설명

입출력

나의 풀이

풀이 과정

첫 번째 예제로 설명하면 brown=10, yellow=2일 때,
yellow를 기준으로 yellow의 약수를 구하면 (1,2)이다. 가로의 길이가 세로의 길이보다 더 길어야 하므로
yellow 타일의 가로의 길이가 2이고, 세로의 길이가 1이다.
이때 brown의 격자수는 (2+2)*2 + 1*2 = 10이므로 문제로 주어진 brown의 격자수와 같다.
카펫의 가로, 세로의 크기는 각각 yellow의 가로, 세로의 격자 수보다 2씩 크므로 카펫의 크기는 [4,3]이다.
brown의 격자수 = (2+2)*2 + 1*2 = 10 은 아래의 그림처럼 계산한 것이다.

위의 설명을 바탕으로 작성한 코드는 아래와 같다. 

class Solution {
    public int[] solution(int brown, int yellow) {
        int[] answer = new int[2];
        int max = 0, min = 0, cal = 0;

        int sqrt = (int) Math.sqrt(yellow);

        for(int i=1; i <= sqrt; i++) {
            if(yellow % i == 0) {
                max = Math.max(i,yellow/i);
                min = Math.min(i,yellow/i);
            }
            cal = (max+2)*2 + min*2;
            if(cal == brown) {
                answer[0] = max + 2;
                answer[1] = min + 2;
                break;
            }
        }
        return answer;
    }
}

 

'알고리즘 문제 풀이 > 프로그래머스' 카테고리의 다른 글

[프로그래머스] (JAVA) Lv1 폰켓몬  (0) 2023.07.02
[프로그래머스] (JAVA) Lv2 더 맵게  (0) 2023.07.02
[프로그래머스] (JAVA) Lv1 최소직사각형  (0) 2023.07.01
[프로그래머스] (JAVA) Lv2 전화번호 목록  (0) 2023.07.01
[프로그래머스] (JAVA) Lv0 배열 조각하기  (0) 2023.06.01
  1. 문제
  2. 나의 풀이
'알고리즘 문제 풀이/프로그래머스' 카테고리의 다른 글
  • [프로그래머스] (JAVA) Lv1 폰켓몬
  • [프로그래머스] (JAVA) Lv2 더 맵게
  • [프로그래머스] (JAVA) Lv1 최소직사각형
  • [프로그래머스] (JAVA) Lv2 전화번호 목록
노루스름한맛
노루스름한맛
노루스름한맛
이몸의 블로그
노루스름한맛
전체
오늘
어제
  • 분류 전체보기 (33)
    • 대외 활동 (1)
      • 구름톤 풀스택 1기 (0)
    • 프로젝트 (4)
      • Reviewing(리뷰잉) (4)
    • 알고리즘 문제 풀이 (21)
      • 프로그래머스 (17)
      • 백준 (4)
    • Spring (1)
    • JAVA (1)
    • React native (1)
    • CI,CD (2)
    • TIL & 일기 (2)
      • TIL (2)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • rosetta
  • jenkins
  • 재귀함수
  • expogo
  • 폰켓몬
  • 색종이만들기
  • 게임맵최단거리
  • 최소직사각형
  • embeddings
  • 백준색종이만들기
  • 백준
  • reviewing
  • 전국장애비장애대학생창업경진대회
  • 프로그래머스폰켓몬
  • Java
  • 프로그래머스단어변환
  • 프로그래머스카펫
  • elasticsearch
  • 같은숫자는싫어
  • cicd
  • 프로그래머스
  • 카펫
  • OpenSearch
  • 더맵게
  • 전화번호목록
  • 리뷰잉
  • 프로그래머스더맵게

최근 댓글

최근 글

hELLO · Designed By 정상우.
노루스름한맛
[프로그래머스] (JAVA) Lv2 카펫
상단으로

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.