728x90 반응형 전체 글319 2022.06.06 [프로그래머스] (python 파이썬) 더 맵게 https://programmers.co.kr/learn/courses/30/lessons/42626 코딩테스트 연습 - 더 맵게 매운 것을 좋아하는 Leo는 모든 음식의 스코빌 지수를 K 이상으로 만들고 싶습니다. 모든 음식의 스코빌 지수를 K 이상으로 만들기 위해 Leo는 스코빌 지수가 가장 낮은 두 개의 음식을 아래와 같 programmers.co.kr 풀이 이 문제는 scoville배열에서 가장 작은 값이 K보다 작으면 (가장 작은값+(그 다음 작은값*2))을 더해주면서 모든 음식이 K이상일때의 더한 횟수를 구해야한다. 그래서 매 상황마다 배열을 정렬하게 되면 시간복잡도가 매우 커지기 때문에 heap을 이용해 0번째 인덱스의 값을 K와 비교하고 작으면 heap배열에서 두개를 떠내 (가장 작은값+(.. 2022. 6. 6. 2022.06.06 [프로그래머스] (python 파이썬) 124 나라의 숫자 https://programmers.co.kr/learn/courses/30/lessons/12899# 코딩테스트 연습 - 124 나라의 숫자 programmers.co.kr 풀이 이 문제는 10진법을 1,2,4 3개의 숫자로 나타내야한다. 보면 3진법이 0,1,2총 3가지로 나타낼 수 있다. 그래서 3진법을 베이스로해서 문제를 해결했다. 3진법과 해당 코드와 다른점은 만약 6으로 예를 들면 3진법으로 나타내면 20이 된다. 즉, 3으로 나눠지면 해당 자리수는 0이 된다. 그리고 앞의 자리수 +1 을 하게 된다. 하지만 문제에선 3으로 나눠떨어지면 현재 자리수를 최대 숫자로 하고 다음 자리수는 그대로이다. 그래서 6을 124숫자로 바꾸면 14가 된다. 그래서 우선 while문을 이용해 n이 0보다 작거나.. 2022. 6. 6. 2022.06.05 [프로그래머스] (python 파이썬) 3Xn 타일링 https://programmers.co.kr/learn/courses/30/lessons/12902 코딩테스트 연습 - 3 x n 타일링 programmers.co.kr 풀이 이 문제는 우선 규칙을 찾아야한다. 먼저 n이 홀수면 전체 칸이 홀수가 되기 때문에 2X1의 타일로 채울 수 없기 때문에 0을 리턴해준다. n=2일 때, 3 n=4일 때, 11 n=6일 때, 41 손으로 그려보다 보면 이런식으로 증가하는것을 확인할 수 있다. 여기서 점화식을 찾아야하는데 위의 그림에서 보면 n이 8일 때, 이전 짝수의 *3, 그 이전의 값들*2 +2란 규칙이 있다. 왜냐하면 2씩 증가할때마다 2칸씩 나누면 한칸에 놓을 수 있는 경우의 수=3 그래서 이전의 값에서 *3을 해야하고 그 이전의 값은 상하 반전을 할 경우.. 2022. 6. 5. 2022.06.05 [프로그래머스] (python 파이썬) 2Xn 타일링 https://programmers.co.kr/learn/courses/30/lessons/12900 코딩테스트 연습 - 2 x n 타일링 가로 길이가 2이고 세로의 길이가 1인 직사각형모양의 타일이 있습니다. 이 직사각형 타일을 이용하여 세로의 길이가 2이고 가로의 길이가 n인 바닥을 가득 채우려고 합니다. 타일을 채울 때는 programmers.co.kr 풀이 이 문제는 우선 규칙을 찾는 것이 먼저라고 생각들었다. 그래서 아래와 같이 일정 수까지 직접 구해보았다. 1 1 2 2 3 3 4 5 5 8 6 13 7 21 8 34 9 55 위의 표를 보면 2Xn의 크기를 타일링 하는 가지수는 (n-1) + (n-2)인것을 확인할 수 있다. 위에서 찾은 방법을 코드로 옮기면 아래와 같다. 1 2 3 4 5 .. 2022. 6. 5. 이전 1 2 3 4 5 6 7 ··· 80 다음 728x90 반응형