분류 전체보기(250)
-
백준 2206: 벽 부수고 이동하기 [Java] - 포포
문제 N×M의 행렬로 표현되는 맵이 있다. 맵에서 0은 이동할 수 있는 곳을 나타내고, 1은 이동할 수 없는 벽이 있는 곳을 나타낸다. 당신은 (1, 1)에서 (N, M)의 위치까지 이동하려 하는데, 이때 최단 경로로 이동하려 한다. 최단경로는 맵에서 가장 적은 개수의 칸을 지나는 경로를 말하는데, 이때 시작하는 칸과 끝나는 칸도 포함해서 센다. 만약에 이동하는 도중에 한 개의 벽을 부수고 이동하는 것이 좀 더 경로가 짧아진다면, 벽을 한 개 까지 부수고 이동하여도 된다. 한 칸에서 이동할 수 있는 칸은 상하좌우로 인접한 칸이다. 맵이 주어졌을 때, 최단 경로를 구해 내는 프로그램을 작성하시오. 입력 첫째 줄에 N(1 ≤ N ≤ 1,000), M(1 ≤ M ≤ 1,000)이 주어진다. 다음 N개의 줄에 ..
2022.10.07 -
@CreationTimestamp, @UpdateTimestamp
org.hibernate.annotations Hibernate는 엔티티 객체를 대상으로 INSERT, UPDATE 쿼리가 발생할 때, 현재 시간을 자동으로 저장해주는 어노테이션을 제공한다. @CreationTimestamp INSERT 쿼리를 날릴 때, 현재 시간을 값으로 채운 뒤 쿼리를 생성하게 된다. 따로 생성 시간을 관리하는 수고를 덜어준다. @UpdateTimestamp UPDATE 쿼리를 날릴 때마다 현재 시간을 값으로 채운 뒤 쿼리를 생성한다. 변경 사항이 발생할 때마다 마지막 변경 시간으로 자동 변경되므로 업데이트 할 경우 요긴하게 사용할 수 있다. 용례 @Entity @Getter @Builder public class User { @Id @GeneratedValue(strategy = ..
2022.10.04 -
Redirect VS Forward
Redirect 와 Forward는 둘 다 현재 작업중인 페이지에서 다른 페이지로 이동하는 기능이다. 둘의 차이점을 간단한 비유로 설명하자면, 고객은 클라이언트, 중국집은 서버, 전화번호는 URL이라고 이해하면 쉽다. [Redirect] 1. 고객이 '일미반점' 중국집에 123-4567로 전화를 건다. 2. 종업원은 고객에게 다음과 같이 말한다. "여기는 일미분식입니다.. 짜장 주문은 234-4567로 연락하시오!" 3. 고객은 234-4567로 다시 전화를 해서 주문을 한다. [Forward] 1. 고객이 '일미반점' 중국집에 123-4567로 전화를 건다. 2. 종업원은 재고나 부엌 사정을 알지 못해 옆에 주방장에게 문의해서 답을 얻는다. 3. 종업원이 고객의 주문을 처리한다. 대충 감은 익혔을 테니..
2022.09.28 -
2022 Woori 코딩 페스티벌 본선 후기(feat. 스타벅스)
지원 접수 우연히 상기 포스터를 보고 예선에 접수했었다. 포스터에 보이는 어마어마한 '상금' 보다 바로 아래에 파란 글씨로 있는 "참가자 경품 및 본선 참가자 전원 선물 증정!"에 더 끌려서 지원했다. 이런 대회에서 상받으려면 현재 실력으로는 역부족이라 판단하였다. 따라서 경품을 노리면서, 오프라인 코딩테스트 경험을 쌓으려고 지원했다. 홈페이지에서 손쉽게 접수 가능하다. 예선 후기 접수한 사실을 잊고 살다가, 시험을 한 일주일 남기고 시험 일시, 장소 관련 문자가 도착했다. 그리고 예선 당일날 가서 시험보고 왔다. 시험이 10문제인데 90분이다? 이거 풀 수 있는 문제를 골라서 풀어야 하나..? 생각했었는데 문제가 반쪽 아니 반의 반쪽짜리 문제였다.. 참고로 IDE 사용 불가능하다. 1. 함수 작성하기 ..
2022.09.18 -
백준 11725: 트리의 부모 찾기 [Java] -포포
문제 루트 없는 트리가 주어진다. 이때, 트리의 루트를 1이라고 정했을 때, 각 노드의 부모를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 노드의 개수 N (2 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N-1개의 줄에 트리 상에서 연결된 두 정점이 주어진다. 출력 첫째 줄부터 N-1개의 줄에 각 노드의 부모 노드 번호를 2번 노드부터 순서대로 출력한다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.StringTokenizer; public class Main{ static int n; stat..
2022.09.13 -
백준 1238: 파티 [Java] - 포포
문제 N개의 숫자로 구분된 각각의 마을에 한 명의 학생이 살고 있다. 어느 날 이 N명의 학생이 X (1 ≤ X ≤ N)번 마을에 모여서 파티를 벌이기로 했다. 이 마을 사이에는 총 M개의 단방향 도로들이 있고 i번째 길을 지나는데 Ti(1 ≤ Ti ≤ 100)의 시간을 소비한다. 각각의 학생들은 파티에 참석하기 위해 걸어가서 다시 그들의 마을로 돌아와야 한다. 하지만 이 학생들은 워낙 게을러서 최단 시간에 오고 가기를 원한다. 이 도로들은 단방향이기 때문에 아마 그들이 오고 가는 길이 다를지도 모른다. N명의 학생들 중 오고 가는데 가장 많은 시간을 소비하는 학생은 누구일지 구하여라. 입력 첫째 줄에 N(1 ≤ N ≤ 1,000), M(1 ≤ M ≤ 10,000), X가 공백으로 구분되어 입력된다. 두..
2022.09.11