분류 전체보기

JPA

[JPA] Embedded Type 임베디드 타입

임베디드 타입(Embedded Type)이란? 엔티티의 데이터 타입 분류로는 기본값 타입, 임베디드 타입, 컬렉션 값 타입 3가지가 존재한다. 그 중 임베디드 타입에 대해서 알아보고자 한다. 임베디드 타입은 관계형 데이터베이스에서 특정 엔티티에 속하는 복합적인 속성들을 그룹화하여 표현하는 방법이다. 임베디드 타입은 언제 사용할까? 1. 복합 속성의 그룹화 특정 엔터티에 속하는 여러 속성이 논리적으로 그룹화될 때 Embedded 타입을 사용할 수 있다. 예를 들어, 주소, 연락처, 또는 기타 복합적인 속성 그룹이 있을 경우 이를 하나의 클래스로 정의하고 해당 클래스를 Embedded 타입으로 사용할 수 있다. 2. 코드의 재사용성 여러 엔터티에서 동일한 속성 그룹이 사용될 경우, Embedded 타입을 이..

Problem Solving/BaekJoon

[BOJ/백준] 25307 - 시루의 백화점 구경

25307번: 시루의 백화점 구경 첫째 줄에 백화점의 세로 길이, 가로 길이, 마네킹과 떨어져야 하는 거리를 의미하는 정수 $N, M, K$가 공백으로 구분되어 주어진다. ($1 \leq N,M \leq 2\,000$, $0 \leq K \leq 4\,000$) 둘째 줄부터 $N$개의 줄 www.acmicpc.net 각 점의 영역을 표시해야할 때 각 점을 동시에 BFS Multi-Source BFS 제목 시루의 백화점 구경 조건 시간 제한 : 2 초 메모리 제한 : 1024 MB 문제 시루는 부모님과 함께 백화점에 갔다. 부모님은 쇼핑할 것이 많기 때문에 여러 곳을 돌아다녀야 하고, 시루는 부모님과 함께 걸어다니는 것이 너무 힘들어서 의자에 앉아서 쉬려고 한다. 백화점은 세로 길이가 N, 가로 길이가 M..

Problem Solving/BaekJoon

[BOJ/백준] 30640 - 운전 연습

30640번: 운전 연습 장롱 면허를 보유한 시은이는 수직선 위에서 운전 연습을 하려고 한다. 시은이는 원점에서 출발하여 항상 양의 방향으로 이동할 것이다. 자동차는 단위 거리 1만큼 이동하는데 전기 1kWh를 소모 www.acmicpc.net 해당 위치까지 갈 수 있다는 것은 마법사를 만나도 0번째 위치로 이동해서 다시 올 수 있다 해당 위치까지 갈 수 없다는 것은 마법사를 만나도 다시 올 수 없다 순간이동을 해서 다시 올 수 있음은 다음 조건으로 확인할 수 있다 순간이동한 곳까지 Cost = A 마법사를 만난 곳까지 Cost = B A B 일 경우 A - B < B 이어야만 가능 제목 운전 연습 조건 시간 제한 : 1 초 메모리 제한 : 1024 MB 문제 장롱 면허를 보유한 시은이는 수직선 위에서 ..

Problem Solving/BaekJoon

[BOJ/백준] 30680 - 별자리 만들기

30680번: 별자리 만들기 첫째 줄에 장식의 개수 $N$이 정수로 주어진다. $(1 \leq N \leq 100 \, 000)$ 둘째 줄부터는 $N$개의 장식에 대한 정보가 스타가 받는 순서대로 주어진다. 각 장식에 대해서 첫째 줄에는 별의 개수 $A_i$가 www.acmicpc.net DFS + PriorityQueue 제목 별자리 만들기 조건 시간 제한 : 1 초 메모리 제한 : 512 MB 문제 밤하늘에 무지갯빛 별이 하나 반짝이고 있다. 이 무지갯빛 별과 N개의 장식을 사용해서 별자리를 만들어 밤하늘을 예쁘게 꾸미려고 한다. 각 장식의 특징은 다음과 같다. 각 장식은 Ai개의 별과 (Ai-1)개의 실로 이루어진 트리다. 실은 서로 다른 두 별을 연결한다. 각 장식에는 정확히 1개의 붉은색 별이 ..

Problem Solving/BaekJoon

[BOJ/백준] 25395 - 커넥티드 카 실험

25395번: 커넥티드 카 실험 실험 결과로 나올 수 있는 사물 인터넷에 연결된 커넥티드 카들의 조합은 $\{1,2,3\}$, $\{2,3\}$, $\{3\}$, $\{3,4\}$가 있다. www.acmicpc.net 두 포인터 + BFS 제목 커넥티드 카 실험 조건 시간 제한 : 2 초 메모리 제한 : 1024 MB 문제 정보통신기술(ICT)의 발달에 힘입어, 미래형 자동차로 여겨졌던 인터넷 연결을 통해 운전자에게 다양한 서비스를 제공하는 커넥티드 카(connected car)가 현실로 다가왔다. 현대오토에버는 이에 발맞춰 클라우드와 사물 인터넷을 비롯한 최신 ICT를 적용한 차세대 커넥티드 카 서비스 플랫폼을 구축하고, 최고의 커넥티드 카를 완성하기 위한 핵심 소프트웨어 기술을 축적하고 있다. 현대오..

JAVA

[JAVA/자바] Code Convention 코드 컨벤션

프로젝트를 시작하면서 팀원들과의 코드양식을 맞추기 위해 코드 컨벤션에 대해 알아보았다. 프론트엔드, 백엔드마다 유행하는 코드 컨벤션이 다 다르고 각각의 특징에 따라서 사용한다. Code Convention 코드 컨벤션 프로그래밍에서 특정 언어나 프레임워크를 사용할 때 일관된 형식과 스타일을 유지하기 위한 규칙 1. 들여쓰기 및 공백 사용 2. 변수 및 함수 명명 규칙 3. 주석 사용 규칙 4. 코드 구조 규칙 코드 컨벤션을 쓰는 이유 1. 가독성 향상 일관된 코드 스타일과 형식은 코드를 읽고 이해하기 쉬운 가독성 높은 코드를 만든다. 이어서 가독성이 높은 코드는 버그를 찾기 쉽고 유지보수가 용이해진다. 2. 협업의 향상 여러 개발자가 협업하는 경우, 일관된 코드 컨벤션을 따르면 개발자들 간의 의사소통이 ..

Problem Solving/BaekJoon

[BOJ/백준] 31410 - 제독 작전

31410번: 제독 작전 부대에 미확인 오염 물질이 발생해 위기에 빠졌다! 오염 물질은 부대 내의 수직선 위의 서로 다른 $N$개의 위치에 발생했으며, 그중 $i$번째 오염 물질의 오염도는 $p_i$이며 $x_i$ 위치에 발생했다. www.acmicpc.net 한 쪽 끝에서 시작해야 불필요한 경로 중복을 없앨 수 있다 왼쪽 끝과 오른쪽 끝에서 시작 1번째와 N번째를 남겨둘 때는 기준이 달라지기 때문에 기존에 구한 방식과 다르게 따로 구해줘야 한다 제목 제독 작 조건 시간 제한 : 1 초 메모리 제한 : 1024 MB 문제 부대에 미확인 오염 물질이 발생해 위기에 빠졌다! 오염 물질은 부대 내의 수직선 위의 서로 다른 N개의 위치에 발생했으며, 그중 i번째 오염 물질의 오염도는 pi이며 xi 위치에 발생했..

JPA

[JPA] Lazy Loading 지연로딩

Lazy Loading 지연로딩 지연로딩이란 연관된 엔티티를 즉시 로드하지 않고, 실제로 사용될 때 로드하는 것을 말한다. Lazy Loading을 쓰는 이유 관계를 맺는 엔티티에서 연관되지 않은 필드만 조회하는 경우 연관된 필드를 호출할 필요가 없으므로 이러한 불필요한 호출을 없애는 것이 지연로딩이다. @Entity public class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String username; @OneToMany(mappedBy = "user", fetch = FetchType.LAZY) private List orders; } @Entity public class Ord..

SpringBoot

[SpringBoot/스프링부트] Record

Record란? Java Record는 Java 14부터 도입된 특별한 종류의 클래스로, 데이터를 저장하기 위한 간단한 방법을 제공한다. Spring Boot 프레임워크에서는 이러한 Record를 활용하여 간편하게 데이터 모델을 정의하고 사용한다. Record는 왜 쓰는 건가요? 1. 간결한 코드 작성 Record를 사용하면 필드를 선언하면서 자동으로 생성되는 메서드들을 통해 코드를 간결하게 작성할 수 있다. public record Person(String firstName, String lastName) { } Person person = new Person("John", "Doe"); 2. 자동으로 생성되는 메서드 Record는 생성자, getter 메서드, equals, hashCode, toSt..

Problem Solving/BaekJoon

[BOJ/백준] 23286 - 허들 넘기

23286번: 허들 넘기 첫째 줄에 세 정수 N, M, T가 주어진다. 다음 M개의 줄에 그래프 간선의 정보 u, v, h가 주어지고, u에서 v로 가는 간선이 있고, 높이가 h인 허들이 간선 중간에 놓여 있다는 의미이다. 마지막 T개의 www.acmicpc.net Minimum 다익스트라 제목 허들 넘기 조건 시간 제한 : 2 초 메모리 제한 : 1024 MB 문제 허들 국가대표를 꿈꾸는 연두는 그래프 위에서 허들 넘기를 연습하려고 한다. 연두가 연습할 그래프는 정점이 N개 있고, 간선이 M개 있다. 간선은 방향성이 있어, 1에서 2로 가는 길이 있더라도, 2에서 1로 가는 길은 없을 수도 있다. 간선 위에는 허들이 중간에 놓여 있고, 간선을 지나갈 때는 반드시 허들을 넘어야 한다. 연두는 연습을 T번..

Problem Solving/BaekJoon

[BOJ/백준] 1766 - 문제집

1766번: 문제집 첫째 줄에 문제의 수 N(1 ≤ N ≤ 32,000)과 먼저 푸는 것이 좋은 문제에 대한 정보의 개수 M(1 ≤ M ≤ 100,000)이 주어진다. 둘째 줄부터 M개의 줄에 걸쳐 두 정수의 순서쌍 A,B가 빈칸을 사이에 두고 주 www.acmicpc.net 위상정렬 제목 문제 조건 시간 제한 : 2 초 메모리 제한 : 128 MB 문제 민오는 1번부터 N번까지 총 N개의 문제로 되어 있는 문제집을 풀려고 한다. 문제는 난이도 순서로 출제되어 있다. 즉 1번 문제가 가장 쉬운 문제이고 N번 문제가 가장 어려운 문제가 된다. 어떤 문제부터 풀까 고민하면서 문제를 훑어보던 민오는, 몇몇 문제들 사이에는 '먼저 푸는 것이 좋은 문제'가 있다는 것을 알게 되었다. 예를 들어 1번 문제를 풀고 ..

Problem Solving/BaekJoon

[BOJ/백준] 31230 - 모비스터디

31230번: 모비스터디 첫 번째 테스트 케이스에 대한 그림이다. 이 테스트 케이스에는 $1 → 7 → 2 → 6$ 경로와 $1 → 4 → 5 → 2 → 6$ 경로 총 2개의 최단 경로가 존재하며, 최단 경로 위에 존재하는 도시는 $1$, $2$, $4$, $5 www.acmicpc.net X는 최단경로에 있다 = (1-X 거리 + X-N 거리) 가 최단거리다 다익스트라에서 현재 위치의 거리를 최단거리로 만드려고 하는 CURR의 값이 최적이 아닌 경우 NEXT와 상관없이 최적이 될 수 없으므로 CONTINUE로 경우를 제외해야한다. 제목 모비스터디 조건 시간 제한 : 2 초 메모리 제한 : 1024 MB 문제 현대모비스는 글로벌 자동차 부품 기업으로 자율주행, 커넥티비티, 전동화 분야에 역량을 집중해 스..

JunHoChoi
'분류 전체보기' 카테고리의 글 목록 (2 Page)