본문 바로가기
728x90
반응형

Python3173

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.
2022.06.04 [프로그래머스] (python 파이썬) 멀쩡한 사각형 https://programmers.co.kr/learn/courses/30/lessons/62048 코딩테스트 연습 - 멀쩡한 사각형 가로 길이가 Wcm, 세로 길이가 Hcm인 직사각형 종이가 있습니다. 종이에는 가로, 세로 방향과 평행하게 격자 형태로 선이 그어져 있으며, 모든 격자칸은 1cm x 1cm 크기입니다. 이 종이를 격자 선을 programmers.co.kr 풀이 이 문제는 알고리즘 문제라기 보다는 수학문제에 가까운 문제이다. 위의 문제 보기를 보면 8*12의 격자칸에서 대각선이 지나간 사각형은 총 16개이다. 그럼 16이 어떻게 만들어진것인가를 생각해봐야한다. 여기서 w와 h의 합은 20이고 4가 빠져야하는데 여기서 4가 최대공약수가 될 수도 있고 짧은 변/2가 될 수도 있다고 생각했다... 2022. 6. 4.
2022.06.04 [프로그래머스] (python 파이썬) 문자열 압축 https://programmers.co.kr/learn/courses/30/lessons/60057 코딩테스트 연습 - 문자열 압축 데이터 처리 전문가가 되고 싶은 "어피치"는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문 programmers.co.kr 풀이 먼저 answer값을 문자열의 최대길이로 설정하고 s의 길이가 1이면 바로 1리턴하기 1. i개로 문자열 압축하기 2. 처음 i개의 문자열 a에 저장하기(다음 문자열과 비교하기 위해) 3. i부터 len(s)-1까지 i개로 늘어나는 for문을 돌려 다음 i개의 문자열과 이전 문자열 비교하기 4. 만약 이전 값과 같으면 cnt+=1 5. 이전 값과 다.. 2022. 6. 4.
728x90
반응형