문제 설명 풀이 코드 숨바꼭질 3번 문제와 완전 똑같은데 순간이동시 시간이 1초 소요된다는 점만 다르다. [Python/파이썬] 백준 13549 - 숨바꼭질3 문제 설명 입출력 예제 풀이 코드 동생의 위치 k에 도달할 때 까지 문제에 주어진 3가지 이동방법으로 탐색한다. 문제에 주어진 범위 0 hstory0208.tistory.com 동생의 위치 k에 도달할 때 까지 문제에 주어진 3가지 이동방법으로 탐색한다. 문제에 주어진 범위 0
문제 설명 입출력 예제 풀이 코드 이 문제는 딱 보고 BFS 문제다라고 생각하진 못했지만 너비 우선 탐색 알고리즘 카테고리를 풀고 있기 때문에 BFS로 문제를 풀어 보았다. 큐에 연산을 통해 값이 변할 a와 첫 연산 횟수 1을 튜플로 묶어 추가해준다. 큐가 빌 때 까지 a의 뒤에 숫자 1을 추가한 수와 a * 2를 한 수를 추가하여 연산 횟수를 하나씩 올린다. 만약 a의 수가 b보다 크면 다음 큐를 꺼내어 확인한다. a와 b가 같다면 연산횟수 cnt를 출력하고 종료한다. 큐가 빌때 까지 a와 b가 같지 않다면 -1을 출력한다. 아래의 사진은 a : 2 , b : 162 일 때 bfs를 통해 나온 (a, cnt) 값들이다. 처음에는 a > b 일 때 continue를 하지 않아 정답과 다른 값이 나왔는데 ..
JPA를 사용하다보면 "영속성 컨텍스트"라는 단어를 많이 보게 된다. 하지만 대충 어떤방식인줄은 알지만, 정확히는 이해하지 못했다. 이번에 JPA에서 가장 중요하고 핵심 개념인 "영속성 컨텍스트"에 대해 다뤄보려한다. 영속성 컨텍스트 영속성 컨텍스트를 한국어로 번역하면 "엔티티를 영구 저장하는 환경"이라는 뜻이다. EntityManager.persist(entity) 우리가 Spring Data JPA를 사용할 때는 우리가 직접 EntityManager을 생성해서 객체를 저장하지는 않는다. 하지만 영속성 컨텍스트를 이해하기 위해서는 EntityManager에 대한 이해가 필요하다. EntityManager의 persist() 메서드는 객체를 저장하는 역할을 한다. 하지만 저장하는 곳이 DB가 아닌 바로,..
문제 설명 입출력 예제 풀이 코드 골드1 난이도인 만큼 이전 BFS문제보다 상당히 까다로웠다. 1. 먼저 빨강 공과 파란 공의 위치를 방문했는지 확인할 필요가 있다. 이 부분을 visited 리스트에 공들의 위치 값을 튜플로 넣어 방문 여부를 확인하였다. 2. 주어진 입력 값에서 빨강 공의 위치와 파란 공의 위치를 반환. getPos()라는 메서드를 만들어 각 공의 위치를 반환하도록 하였다. 3. 각 공이 구멍전까지 도달하는데 걸리는 기울이기 횟수를 구한다. move() 함수를 통해 이동하는 위치가 벽이아니고, 구멍에 들어가지 않을 동안 반복하여 각 공의 기울이기 횟수를 구하였다. 이 기울이기 횟수는 두 공의 위치가 겹쳤을 경우를 처리하기 위해 사용한다. 4. bfs를 통해 빨강 공이 구멍에 도달하면 r..
📌 사용 기술 스택- 스프링 부트 2.7.12- 타임리프- Spring Data JPA- H2 DB- Lombok 이번에 게시판에 필수요소인 페이징 기능을 추가해보았다.페이징 기능은 Springframework가 제공하는 @PageableDefault 어노테이션, Pageable, Page 인터페이스로 구현할 수 있다. 이 포스팅은 페이징 기능을 구현하는 설명을 다루므로 페이징과 관계 없는 코드는 과감히 뺐으며, 나머지 부분은 아래 링크로 대체한다. - 게시판 웹 서비스에 관한 코드 : https://github.com/Hyeon0208/posting-webservice GitHub - hyeon0208/posting-webserviceContribute to hyeon0208/posting-webs..