본문 바로가기

전체 글137

[스택, linked list] 프로그래머스 - 표 편집 문제 출처 : https://programmers.co.kr/learn/courses/30/lessons/81303 코딩테스트 연습 - 표 편집 8 2 ["D 2","C","U 3","C","D 4","C","U 2","Z","Z"] "OOOOXOOO" 8 2 ["D 2","C","U 3","C","D 4","C","U 2","Z","Z","U 1","C"] "OOXOXOOO" programmers.co.kr 문제 설명 : 업무용 소프트웨어를 개발하는 니니즈웍스의 인턴인 앙몬드는 명령어 기반으로 표의 행을 선택, 삭제, 복구하는 프로그램을 작성하는 과제를 맡았습니다. 세부 요구 사항은 다음과 같습니다 위 그림에서 파란색으로 칠해진 칸은 현재 선택된 행을 나타냅니다. 단, 한 번에 한 행만 선택할 수 있으.. 2022. 4. 2.
[동적 계획법] 프로그래머스 - 2 x n 타일링 문제 출처 : https://programmers.co.kr/learn/courses/30/lessons/12900 코딩테스트 연습 - 2 x n 타일링 가로 길이가 2이고 세로의 길이가 1인 직사각형모양의 타일이 있습니다. 이 직사각형 타일을 이용하여 세로의 길이가 2이고 가로의 길이가 n인 바닥을 가득 채우려고 합니다. 타일을 채울 때는 programmers.co.kr 문제 설명 : 가로 길이가 2이고 세로의 길이가 1인 직사각형모양의 타일이 있습니다. 이 직사각형 타일을 이용하여 세로의 길이가 2이고 가로의 길이가 n인 바닥을 가득 채우려고 합니다. 타일을 채울 때는 다음과 같이 2가지 방법이 있습니다. 타일을 가로로 배치 하는 경우 타일을 세로로 배치 하는 경우 예를들어서 n이 7인 직사각형은 다.. 2022. 4. 1.
[재귀] 프로그래머스 - 하노이의 탑 문제 출처 : https://programmers.co.kr/learn/courses/30/lessons/12946 코딩테스트 연습 - 하노이의 탑 하노이 탑(Tower of Hanoi)은 퍼즐의 일종입니다. 세 개의 기둥과 이 기동에 꽂을 수 있는 크기가 다양한 원판들이 있고, 퍼즐을 시작하기 전에는 한 기둥에 원판들이 작은 것이 위에 있도록 순서대 programmers.co.kr 문제 설명 하노이 탑(Tower of Hanoi)은 퍼즐의 일종입니다. 세 개의 기둥과 이 기동에 꽂을 수 있는 크기가 다양한 원판들이 있고, 퍼즐을 시작하기 전에는 한 기둥에 원판들이 작은 것이 위에 있도록 순서대로 쌓여 있습니다. 게임의 목적은 다음 두 가지 조건을 만족시키면서, 한 기둥에 꽂힌 원판들을 그 순서 그대로 .. 2022. 4. 1.
[DFS / BFS] 백준 1987번 : 알파벳 문제 출처 : https://www.acmicpc.net/problem/1987 문제 설명 세로 R칸, 가로 C칸으로 된 표 모양의 보드가 있다. 보드의 각 칸에는 대문자 알파벳이 하나씩 적혀 있고, 좌측 상단 칸 (1행 1열) 에는 말이 놓여 있다. 말은 상하좌우로 인접한 네 칸 중의 한 칸으로 이동할 수 있는데, 새로 이동한 칸에 적혀 있는 알파벳은 지금까지 지나온 모든 칸에 적혀 있는 알파벳과는 달라야 한다. 즉, 같은 알파벳이 적힌 칸을 두 번 지날 수 없다. 좌측 상단에서 시작해서, 말이 최대한 몇 칸을 지날 수 있는지를 구하는 프로그램을 작성하시오. 말이 지나는 칸은 좌측 상단의 칸도 포함된다. 입력 첫째 줄에 R과 C가 빈칸을 사이에 두고 주어진다. (1 ≤ R,C ≤ 20) 둘째 줄부터 R.. 2022. 4. 1.
[Spring Boot] 영속성 컨텍스트 스프링부트를 처음 접했을 때, 영속성 컨텍스트라는 말을 들으면서 진짜 알 듯 말 듯 하다 싶은 생각을 했다. 이런 개념들은 보통 설명을 들을 때보다 프로젝트를 하면서 '아 이게 이런 뜻이구나!' 하는 깨달음을 얻는 경우가 많은데, 이번에도 프로젝트를 통해 영속성 컨텍스트가 이런 느낌이구나 배울 수 있었다. 영속성 컨텍스트는 엔티티를 조회하고 난 후에 그 값을 엔티티 매니저가 들고 있는 것이다. 그러니까 DB에 쿼리를 보내서 조회한 다음에 까먹지 않고 기억해 두는 것이라고 생각하면 된다. 따라서 엔티티 매니저가 이 데이터를 기억하고 있으니까 같은 것을 조회할 때, 쿼리를 다시 보내지 않고 그 값을 확인해 볼 수 있다. em.persist(user); 즉, 이런 코드가 repository에 존재한다고 치면,.. 2022. 2. 27.
맥북에서 python 3.X 설치하고 기본 python으로 설정하는 법 얼마 전에 맥북을 새로 겟.. 했다. 완전히 내 껀 아니지만 당분간 얻어 쓸 수 있게 되었다. 그러다 보니, 아무래도 새롭게 개발 환경을 세팅해야 할 것이 많았는데, 그 중에 가장 먼저 설치한 것은 python이었다. 구글링을 해봤을 때 가장 위에 뜨는 것들을 먼저 해봤는데, 초기 설정이 아예 없어서인지 잘 작동하지 않았다. 좀 더 많이 찾아보니 이것저것 나오긴 했는데 내 경우에는 이렇게 했더니 작동이 되었다. 먼저 파이썬 공식 사이트에서 안정화된 최신 버전(나의 경우는 3.10.2)을 다운 받았다. https://www.python.org/downloads/macos/ Python Releases for macOS The official home of the Python Programming Langu.. 2022. 2. 25.