분류 전체보기(106)
-
99클럽 코테 스터디 3일차 TIL : 이분탐색(프로그래머스 level3. 입국심사)
Programmers leve3. 입국심사 https://school.programmers.co.kr/learn/courses/30/lessons/43238 ⭐나의 풀이 🔎문제 정리)입국심사 기다리는 사람수 : n 심사관이 한 명 심사하는데 걸리는 시간이 담긴 배열 : times 심사관 수 : people 심사받는데 걸리는 시간의 최소값 return 하기 제한) 111예) n=6, times=[7,10] return 28 💡 아이디어) 1. 입국심사 자보다 심사관 수가 많으면, 가장 오래걸리는 심사관의 시간이 최소값임 => n이 people보다 작으면 times중의 최대값이 반환 => if(n2. 1 2 3 4 5 6 / 7 10 14 20 21 28/ 30 .... ..
2024.10.30 -
99클럽 코테 스터디 2일차 TIL : 이분탐색(백준11561. 징검다리)
11561. 징검다리 https://www.acmicpc.net/problem/11561 ⭐나의 풀이1 ~ N개 징검다리 1. 첫 징검다리 아무거나 밟을 수 있음 2. 두번째 점프부터는 이전 점프한 거리보다 1이상 긴거리 3. N번 징검다리는 반드시 밟아야한다. 4. N번 징검다리 이후는 점프하지 않아 규칙적용X 1승택이가 밟을 수 있는 최대 징검다리 수 출력하기 예1) 1 1 예2) 2 1 예3) 3 2 예4) N=100 13 수열 a1 3 6 10 15 21 28 36 45 55 66 78 (91-점프x) 100(대신점프o) =>13개= n(n+1)/2=> 해당 수열 a 에서 N보다 작은 것 중 가장 큰 것의 index찾기(1부터 시작) "1 + 2 + 3 + ... + k k" 찾기.예) N..
2024.10.29 -
99클럽 코테 스터디 1일차 TIL : 이분탐색(백준1072. 게임)
https://www.acmicpc.net/problem/1072 [1차 풀이] 예제1) 10 8 => 승률 80 11 9 => 승률 81 예제2) 100 80 => 승률 80 101 81 => 승률 81 예제3) 47 47 => 승률100(최대) 더이상 안올라감 -1 예제4) 99000 0 => 승률0 100000 1000 => 승률1 * 탐색 승률이 1프로올라가면 멈춤package search;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class Ex1072 { public static void main(S..
2024.10.28 -
스프링 MVC - 구조 이해(1)
스프링 MVC 전체 구조직접 만든 MVC 프레임워크와 스프링 MVC를 비교해보자. 직접 만든 MVC 프레임워크 구조 SpringMVC 구조 직접 만든 프레임워크 -> 스프링 MVC 비교- FrontController -> DispatcherServlet- handlerMappingMap -> HandlerMapping- MyHandlerAdapter -> HandlerAdapter- ModelView -> ModelAndView- viewResolver -> ViewResolver- MyView -> View ⭐ DispatcherServlet 구조 : org.springframework.web.servlet.DispatcherServlet 스프링 MVC도 프론트 컨트롤러 패턴으로 구현되어 있다.스프..
2024.10.23 -
MVC 프레임워크 만들기(2)
단순하고 실용적인 컨트롤러 - V4앞서 만든 v3 컨트롤러는 서블릿 종속성을 제거하고 뷰 경로의 중복을 제거하는 등, 잘 설계된 컨트롤러이다.그런데 실제 컨트톨러 인터페이스를 구현하는 개발자 입장에서 보면, 항상 ModelView 객체를 생성하고 반환해야 하는 부분이 조금은 번거롭다. 좋은 프레임워크는 아키텍처도 중요하지만, 그와 더불어 실제 개발하는 개발자가 단순하고 편리하게 사용할 수 있어야 한다. 소위 실용성이 있어야 한다. 이번에는 v3를 조금 변경해서 실제 구현하는 개발자들이 매우 편리하게 개발할 수 있는 v4 버전을 개발해보자. 인터페이스 ControllerV4.javapackage hello.servlet.web.frontcontroller.v4;import java.util.Map;..
2024.10.21 -
MVC 프레임워크 만들기(1)
⭐FrontController 패턴 특징 - 프론트 컨트롤러 서블릿 하나로 클라이언트의 요청을 받음- 프론트 컨트롤러가 요청에 맞는 컨트롤러를 찾아서 호출- 입구를 하나로! - 공통 처리 가능 - 프론트 컨트롤러를 제외한 나머지 컨트롤러는 서블릿을 사용하지 않아도 됨 ⭐ 스프링 웹 MVC와 프론트 컨트롤러스프링 웹 MVC의 핵심도 바로 FrontController-> 스프링 웹 MVC의 DispatcherServlet이 FrontController 패턴으로 구현되어 있음 프론트 컨트롤러 도입 - v1목표: 기존 코드를 최대한 유지하면서, 프론트 컨트롤러를 도입해보자!먼저, 구조를 맞춰두고 점진적으로 리팩터링 해보자 인터페이스 - ControllerV1.javapackage hello.servl..
2024.10.21