-
[프로그래머스] [PCCE 기출문제] 9번 / 지폐 접기 자바코딩테스트 2025. 3. 25. 16:16반응형
https://school.programmers.co.kr/learn/courses/30/lessons/340199
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
반복문을 사용하여, 지폐크기를 비교한 후 지폐크기 < 지갑크기가 될 때 까지의 접은 횟수를 반환하는 문제이다.
여기서 지폐의 회전을 허용하므로 두 종류의 비교를 사용하여 문제를 처리하였다.
- billX <= walletX && billY <= walletY
- billY <= walletX && billX <= walletY
- 둘 중 하나의 조건에 부합할 때 까지 조건문을 반복하고 반복횟수를 반환한다
public int solution(int[] wallet, int[] bill) { return calFold(wallet, bill); } // 접은 횟수 반환 public int calFold(int[] wallet, int[] bill){ int foldCount = 0; int walletX = wallet[0]; int walletY = wallet[1]; int billX = bill[0]; int billY = bill[1]; while(true){ boolean isFit = billX <= walletX && billY <= walletY; boolean isRotatedFit = billY <= walletX && billX <= walletY; if(isFit || isRotatedFit) { break; } if(billX > billY){ billX /= 2; } else if(billY > billX){ billY /= 2; } foldCount ++; } return foldCount; }
반응형'코딩테스트' 카테고리의 다른 글
[프로그래머스] 가장 많이 받은 선물 자바 (0) 2025.03.27 [프로그래머스] [PCCE 기출문제] 10번 / 공원 (0) 2025.03.26 [프로그래머스] 동영상재생기 자바 (0) 2025.03.25 [프로그래머스] 유연근무제 자바 (0) 2025.03.24 JAVA 택배상자꺼내기 (1) 2025.03.24