[프로그래머스] 유연 근무제 자바 풀이 (JAVA)
·
알고리즘
https://school.programmers.co.kr/learn/courses/30/lessons/388351  프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 설명 해당 문제에 주어진 인자는 총 3개이다. 각 직원들의 목표 시간(희망 출근 시간)이 들어있는 schedules 배열,직원들의 출근 시간이 들어있는 timelogs 이중 배열,그리고 시작 날짜인 startday 정수. (월요일 = 1, 화요일 = 2, ... 일요일 = 7) 이 문제의 목표는 직원들이 '주말을 제외'한 날에 목표시간 + 10의 시간보다 일찍 출근했는지를 알아내고목표시간보다 일찍 출근한 직원들의 수를 반환하는 것이다...
[Spring 핵심 원리 이해] 5. 컴포넌트 스캔
·
Spring
저번 시간 우리는 싱글톤 패턴이 무엇인지 그리고스프링 컨테이너가 어떻게 싱글톤 패턴을 보장해줄 수 있는지에 대해 이야기 해보았다. 스프링 컨테이너는 @Configuration이 붙은 클래스의 스프링 빈 메서드를 CGLIB 라이브러리를 통해서 같은 인스턴스 객체를 반화하도록 도와준다.  이번 시간에는 스프링 빈을 등록할 때 설정 정보 없이 자동으로 스프링 빈을 등록할 수 있는 컴포넌트 스캔이라는 기능에 대해서 알아보도록 하겠다. 또한 의존 관계를 자동으로 주입해주는 @Autowired 기능도 알아볼 것이다.  1. 컴포넌트 스캔 시작  먼저 AutoAppConfig.java 파일을 하나 만들어주자  package hello.core_review;import org.springframework.context..
[알고리즘] DP 알고리즘 (동적 계획 알고리즘, 플로이드 알고리즘)
·
알고리즘
DP 알고리즘이란 무엇인가? DP 알고리즘이란 Dynamic Programming 알고리즘, 즉 동적 계획 알고리즘을 의미한다.  DP 알고리즘은 입력크기가 작은 부분 문제들을 해결한 후 그 해들을 이용해 보다 큰 크기의 부분 문제들을 해결해 나간다. 그리고 결국은 원래 주어진 입력의 문제를 해결하는 것이 DP 알고리즘의 목표인 것이다.  그런데 언뜻 보면 DP 알고리즘은 분할 정복 알고리즘과 비슷해보인다.  분할 정복 알고리즘 또한 주어진 문제를 부분으로 나누고부분해의 합을 통해 원래 주어진 입력 값의 해를 구하는 알고리즘이기 때문일 것이다. 하지만 분할 정복 알고리즘과 DP 알고리즘은 차이점을 가지고 있다.  분할 정복 알고리즘은 이렇게 입력 문제 A를 더 이상 나눌 수 없는 D,E,F,G로 나누고,..