RGB 거리 문제 풀이: 동적 계획법(DP) 활용이 문제는 N개의 집을 주어진 비용으로 칠하는 문제로, 각 집을 세 가지 색 중 하나로 칠할 수 있습니다. 다만, 두 집이 인접해 있을 경우, 두 집의 색이 같지 않도록 해야 하므로, 이를 해결하기 위해 동적 계획법(DP)을 사용합니다.문제 분석각 집을 빨간색, 초록색, 파란색 중 하나로 칠할 수 있으며, 각 색에 대한 비용이 다릅니다.N개의 집을 칠할 때, 인접한 두 집은 다른 색으로 칠해야 하므로, 최소 비용을 구하는 것이 목표입니다.해결 방법문제의 상태 정의:score[i][j]: i번째 집을 j색으로 칠하는 비용을 나타냅니다.dp[i][j]: i번째 집까지 칠할 때, j색으로 칠한 최소 비용을 기록합니다.점화식:dp[i][0] (i번째 집을 빨간색으..
1. 스프링 빈(Bean)이란?스프링 프레임워크에서 빈(Bean) 은 스프링 컨테이너가 관리하는 객체를 의미합니다. 일반적인 Java 객체와 동일하지만, 스프링의 IoC(Inversion of Control) 컨테이너에 의해 생성 및 관리됩니다.🔹 스프링 빈의 특징스프링 컨테이너가 직접 객체를 생성 및 관리싱글톤(Singleton)으로 관리 (기본 설정 시)DI(Dependency Injection, 의존성 주입) 지원필요할 때 스프링 컨테이너에서 빈을 가져와 사용 가능2. @Bean 어노테이션@Bean은 개발자가 직접 제어할 수 있는 방법으로 스프링 빈을 등록할 때 사용됩니다. 주로 @Configuration과 함께 사용되며, 메서드에 붙여서 해당 메서드가 반환하는 객체를 스프링 컨테이너가 관리하는 ..
DBCP(Database Connection Pool)는 데이터베이스와의 연결을 효율적으로 관리하기 위한 기술이다. 애플리케이션이 데이터베이스와 통신할 때, 매번 새로운 커넥션을 생성하고 해제하는 것은 성능에 부담을 준다. 이를 해결하기 위해 커넥션 풀(Connection Pool) 이라는 개념이 등장했다.커넥션 풀은 일정 개수의 데이터베이스 커넥션을 미리 생성해두고, 필요할 때 가져다 쓰고 반환하는 방식으로 동작한다. 이를 통해 애플리케이션 성능을 최적화하고, 데이터베이스 부하를 줄일 수 있다.DBCP가 필요한 이유1. 커넥션 생성 비용 절감데이터베이스 커넥션을 생성할 때는 네트워크 통신, 인증, 세션 설정 등의 과정이 필요하다.매 요청마다 커넥션을 생성하면 많은 리소스가 낭비된다.DBCP를 사용하면 ..