전체 글

문제 (Gold 1) https://www.acmicpc.net/problem/2233 2233번: 사과나무 첫째 줄에 정점의 개수 N(1 ≤ N ≤ 2,000)이 주어진다. 둘째 줄에는 벌레가 만드는 2×N자리의 이진수가 주어진다. 셋째 줄에는 썩은 사과의 위치를 나타내는 두 정수 X, Y가 주어진다. 이는 2×N자리 www.acmicpc.net 풀이 트리는 어렵다!!!!!!!!!!!!!!!!! 전체 로직 1. parent 배열과 root 배열 채우기 Stack을 이용하여 트리 만들기 이진 배열을 비교하며 삭제하고자 하는 노드의 '실제 인덱스' 구하기 2. 가장 가까운 공통 조상 구하기 parent배열을 사용한 재귀 기저조건: 루트까지 왔을 경우 or 다른 노드가 이미 방문 했던 노드를 방문할 경우 로..
문제 (Silver 1) https://www.acmicpc.net/problem/11660 11660번: 구간 합 구하기 5 첫째 줄에 표의 크기 N과 합을 구해야 하는 횟수 M이 주어진다. (1 ≤ N ≤ 1024, 1 ≤ M ≤ 100,000) 둘째 줄부터 N개의 줄에는 표에 채워져 있는 수가 1행부터 차례대로 주어진다. 다음 M개의 줄에는 네 www.acmicpc.net 풀이 아이디어 줄 단위로 더해줌 [ ][ ][ ][ ][ ] [ ][ ][o][o][ ] -> o 부분 합: sum(2,5) - sum(2,2) [ ][ ][o][o][ ] -> o 부분 합: sum(3,5) - sum(3,2) o의 최종 부분 합: ( sum(2,5) - sum(2,2) ) + ( sum(3,5) - sum(3,..
문제 (Silver 3) https://www.acmicpc.net/problem/9996 9996번: 한국이 그리울 땐 서버에 접속하지 총 N개의 줄에 걸쳐서, 입력으로 주어진 i번째 파일 이름이 패턴과 일치하면 "DA", 일치하지 않으면 "NE"를 출력한다. 참고로, "DA"는 크로아티어어로 "YES"를, "NE"는 "NO"를 의미한다. www.acmicpc.net 풀이 문제가 어렵지는 않지만 이해를 잘 해야하는 문제! substring으로 나눌때에 반례가 많으니 이를 잘 체크해주어야 한다. 코드 더보기 package implement; import java.io.*; import java.util.*; public class Main_9996_한국이그리울땐서버에접속하지 { public static ..
[ 정의 ] 정적 타입을 이용해서 SQL등의 쿼리를 생성해주는 프레임워크 → 쿼리를 자바코드로 작성할 수 있게 도와줌 Spring Data JPA로 해결하지 못하는 쿼리 해결 가능 코드로 쿼리를 작성함으로써, 컴파일 시점에 문법 오류를 쉽게 확인 결과적으로, QueryDsl로 작성한 코드는 JPQL이 됨 [ QueryDSL Config 설정 ] @Configuration public class QueryDslConfig { @Bean public JPAQueryFactory jpaQueryFactory(EntityManager em){ return new JPAQueryFactory(em); } } JPAQueryFactory빈을 등록 → QueryRepository에서 사용 [ Query Reposit..
[ Controller 생성 ] 요청에 따른 적절한 응답을 보냄 @RequiredArgsConstructor 필드 주입(@Autowired) 대신 사용하는 생성자 주입! 순환 참조 방지 테스트 코드 작성 용이 객체 변이 방지 ( final 키워드 사용 ) More: https://zorba91.tistory.com/238 @RequestBody 클라이언트가 전송하는 Json 형태의 HTTP Body 내용을 Java Object로 변환 메세지를 변환하는 과정에서 객체의 기본 생성자를 통해 객체를 생성하고, 내부적으로 Reflection을 사용해 값을 할당 → 기본 생성자는 필요하고 Setter는 필요하지 않은 이유! @PathVariable URI 경로의 일부를 파라미터로 사용할 때 사용 @RequestP..
1. Entity 생성 미리 작성된 ERD를 바탕으로 도메인 생성 @Entity @Getter @NoArgsConstructor(access = AccessLevel.PROTECTED) public class Todo extends BaseEntity { @Id @GeneratedValue private Long seq; @Builder public Todo(String name, String content, TodoStatus status, Integer predictedPomo, Integer realPomo, WorkProficiency workProficiency, WorkType workType, WorkImportance workImportance) { this.name = name; this..
점이
DOTELOPER