[프로그래머스] Q42842(카펫), Q87946(피로도)

고관운·2022년 10월 15일

Q42842_카펫

문제 풀이

(1) 문제

👀 문제 확인하기 👀

(2) 코드

코드


풀이 방식

  1. yellow의 약수로 접근 (제곱근까지만 구하면 시간 절약)
  2. 약수의 곱이 yellow의 격자의 수가 되는 쌍을 찾아 (약수1+2) * (약수2+2)로 전체 격자의 수를 구함
  3. 전체 격자 = 노란색 격자 + 갈색 격자가 되는지 확인
  4. 해당 약수 쌍을 찾았다면 answer에 append
  5. 가로가 항상 길다고 했으므로 내림차순 정렬

Q87946_피로도

문제 풀이

(1) 문제

👀 문제 확인하기 👀

(2) 코드

코드


풀이 방식

처음 시도 방식
소모 피로도를 오름차순으로 하여 최대 횟수를 구하려 했지만, 최소 필요 피로도의 문제로 최대 횟수를 구하지 못함.

최종 방식
1. 모든 순열 리스트를 for문에 넣기
2. 각 순열에 해당하는 횟수를 구하기 위해 result, tmpK 초기화
3. 각 순열의 던전 정보를 꺼내서 횟수 구하기
4. 각 순열의 횟수 중 최대 횟수를 구하여 리턴

0개의 댓글