본문 바로가기

Programmers56

프로그래머스(3xn 타일링, 가장 먼 노드) - Java [3xn 타일링] https://programmers.co.kr/learn/courses/30/lessons/12902 코딩테스트 연습 - 3 x n 타일링 programmers.co.kr * 조건 세로의 길이가 3이고 가로의 길이가 n인 바닥이 존재한다 타일을 채울 때, 가로 또는 세로 형태로 배치할 수 있다 가로 또는 세로의 최대 길이는 2이다 경우의 수가 많은 것을 대비해 경우의 수를 1,000,000,007으로 나눈 나머지를 return 한다 * 알고리즘 - DP * 로직(Logic) 우선 홀수인 경우에는 답을 구할 수 없다 짝수인 경우를 고려했을 때, if) n=2 : 3개 if) n=4 : (3 * 3) + 2 = 11 이런식으로 나열해보면 규칙을 찾을 수 있게된다 이전 n이 만들어낼 수 있는.. 2019. 11. 1.
프로그래머스(타일 장식물, 4단 고음) - Java [타일 장식물] https://programmers.co.kr/learn/courses/30/lessons/43104 코딩테스트 연습 - 타일 장식물 대구 달성공원에 놀러 온 지수는 최근에 새로 만든 타일 장식물을 보게 되었다. 타일 장식물은 정사각형 타일을 붙여 만든 형태였는데, 한 변이 1인 정사각형 타일부터 시작하여 마치 앵무조개�� programmers.co.kr * 조건 타일은 나선형 형태로 변의 길이를 늘려가며 점점 커진다 늘어날수록 타일의 변의 길이는 1, 1, 2, 3, 5, 8 ... 식으로 늘어난다 타일의 개수 N이 주어졌을 때, 해당 타일에서 만들 수 있는 가장 큰 사각형의 둘레를 출력한다 * 알고리즘 - DP * 로직(Logic) - 사각형 1개로 만들 수 있는 둘레길이부터 2개 3.. 2019. 10. 30.
프로그래머스(자물쇠와 열쇠) - Java [자물쇠와 열쇠] https://programmers.co.kr/learn/courses/30/lessons/60059 코딩테스트 연습 - 자물쇠와 열쇠 [[0, 0, 0], [1, 0, 0], [0, 1, 1]] [[1, 1, 1], [1, 1, 0], [1, 0, 1]] true programmers.co.kr * 조건 키(M*M)와 자물쇠(N*N)가 2차원 배열로 존재한다 배열에서 값 1은 돌기이고, 값 0은 홈이다 주어진 키를 가지고(돌기) 자물쇠의 돌기 부분과 겹치지 않으면서 홈 부분에 넣을 수 있다면 true 키는 90도(시계 방향)으로 회전하여 자물쇠를 열어볼 수 있다 * 알고리즘 - 주어진 키를 통해 자물쇠를 열 수 있는지 모든 경우의 수 탐색: 브루트포스 * 로직(Logic) - 자물쇠 .. 2019. 10. 29.