본문 바로가기
728x90

ALGORITHM/PROGRAMMERS41

[PG/Python] N-Queen 📌 문제 https://programmers.co.kr/learn/courses/30/lessons/12952 코딩테스트 연습 - N-Queen 가로, 세로 길이가 n인 정사각형으로된 체스판이 있습니다. 체스판 위의 n개의 퀸이 서로를 공격할 수 없도록 배치하고 싶습니다. 예를 들어서 n이 4인경우 다음과 같이 퀸을 배치하면 n개의 퀸은 programmers.co.kr 📌 문제 접근 방법 어차피 한 행에 하나의 퀸만 놓을 수 있으므로 행을 하나씩 늘려가며 재귀함수를 돌리고, 행이 n과 같아지면 n개의 퀸을 모두 놓았다는 뜻이므로 answer를 1 더해주고 리턴하는 방식으로 구현하였다. cols, minus, plus라는 리스트를 만들었는데, cols는 각 열에 하나의 퀸만 놓을 수 있으므로 지금 놓여있는.. 2022. 2. 27.
[PG/Python] 삼각 달팽이 📌 문제 https://programmers.co.kr/learn/courses/30/lessons/68645 코딩테스트 연습 - 삼각 달팽이 5 [1,2,12,3,13,11,4,14,15,10,5,6,7,8,9] 6 [1,2,15,3,16,14,4,17,21,13,5,18,19,20,12,6,7,8,9,10,11] programmers.co.kr 📌 문제 접근 방법 각 행마다 행번호에 +1한만큼 0을 채워서 2차원 배열 snail을 생성한다. 삼각형을 보면 처음에는 n개의 숫자가 아래 방향으로 채워지고, 그 다음은 n-1개의 숫자가 왼쪽 방향, 그 다음은 n-2개의 숫자가 위쪽 방향으로 채워진다. 즉, 방향은 무조건 아래->왼쪽->위 이고, 채워지는 숫자의 개수는 1씩 줄어든다. 이를 코드로 옮기면, .. 2022. 2. 27.
[PG/Python] 단속카메라 📌 문제 https://programmers.co.kr/learn/courses/30/lessons/42884 코딩테스트 연습 - 단속카메라 [[-20,-15], [-14,-5], [-18,-13], [-5,-3]] 2 programmers.co.kr 📌 문제 접근 방법 차량이 고속도로에서 나간 지점을 기준으로 정렬을 해준다. 맨 처음 차량이 나간 지점에 카메라를 하나 설치하고 answer의 개수를 1로 초기화한다. routes를 순회하며 마지막에 설치한 카메라 위치보다 더 앞 쪽에서 차량이 진입했을 경우, 그 차량이 나간 지점에 카메라를 새로 설치하고 answer의 개수를 1 더한다. 위의 과정을 반복 후 answer를 반환한다. 포인트는 차량이 나간 지점을 기준으로 카메라를 설치한다는 것! 📌 코드 .. 2022. 2. 27.
[PG/Python] 아이템 줍기 📌 문제 https://programmers.co.kr/learn/courses/30/lessons/87694 코딩테스트 연습 - 아이템 줍기 [[1,1,7,4],[3,2,5,5],[4,3,6,9],[2,6,8,8]] 1 3 7 8 17 [[1,1,8,4],[2,2,4,9],[3,6,9,8],[6,3,7,7]] 9 7 6 1 11 [[2,2,5,5],[1,3,6,4],[3,1,4,6]] 1 4 6 3 10 programmers.co.kr 📌 문제 접근 방법 사각형의 테두리와 테두리를 제외한 내부의 점들의 좌표를 각각 border와 inner에 저장하였다. border에 좌표를 저장할 때는 다른 사각형의 내부에 있는 경우를 제외해야 하므로 inner에 없는 좌표만 저장한다. inner에 좌표를 저장할 때는.. 2022. 2. 6.
728x90