전체 글 62

[JAVA/백준/20437] 문자열 게임 2

날짜 분류 번호 알고리즘 분류 21-01-17 BOJ 20437 슬라이딩 윈도우 링크 문제 요약 주어진 문자열에서 어떤 문자를 정확히 K개만 포함하는 sub 문자열 중 최단 길이와 최장 길이를 구함 풀이 26개의 리스트를 만들어서 각 문자에 해당하는 문자들의 위치를 저장 각 문자별로 x번째 문자와 x+n-1번째 문자의 길이를 계산하여 최대값과 최소값을 비교 비고 가볍게 풀기 좋은 문제 더보기 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; public class Main { public static void main(String[] args) th..

알고리즘왕/BOJ 2021.01.17

[JAVA/백준/8983] 사냥꾼

문제 요약 x 축에 사대가 있고 (a,b)에 동물이 존재함 사대로부터 거리가 L 이하인 동물만 잡을 수 있다고 가정했을 때 잡을 수 있는 동물의 수 찾기 사대의 위치 x와 동물의 위치 (a, b) 간의 거리는 |x-a| + b 풀이 동물들의 위치를 기준으로 반복문으로 돌림 해당 동물을 잡을 수 있는 사대는 y좌표 - (L-x좌표)부터 y좌표 + (L-x좌표) 사대의 위치를 정렬하여 min 값보다 크거나 같은 사대의 idx를 구함 (lowerbound) 해당 idx의 사대 위치가 min 이상 max 이하일 경우 정답에서 1 증가 또 또 또 블로그 글을 보고 힌트를 얻은,,, ㅠㅠ 어차피 min의 값보다 같거나 큰 gun의 위치를 찾는 건데 if (gun[idx] = min && gun[idx] 0 ? mi..

알고리즘왕/BOJ 2021.01.12

[Eclipse/JAVA11] Polling news feeds 문제

JDK를 11로 변경 후 별안간 이클립스에서 문제가 발생 ㅠㅠ 이클립스에서 JAVA11을 사용할 때 발생하는 문제인 듯 싶음 Preferences -> General -> News -> 'Enable automatic news polling' 옵션 체크 해제 임시방편으로 해결하긴 했지만 댓글들을 보니 근본적인 문제 해결은 아닌듯 ㅠㅠ [출처] stackoverflow.com/questions/52528693/eclipse-internal-error-polling-news-feeds

개발킹/JAVA 2021.01.11

Upper Bound와 Lower Bound

정렬되어 있는 리스트에서 특정 위치를 찾기 위해 사용하는 알고리즘 Binary Search를 약간 변형한 형태 Upper Bound: 특정 숫자보다 큰 숫자들 중 가장 작은 숫자의 인덱스 반환 Lower Bound: 특정 숫자보다 같거나 큰 숫자들 중 가장 작은 숫자의 인덱스 반환 int upperBound(List list, int target) { if (list == null || list.size() == 0) return -1; int l = 0, r = list.size() - 1; while (l < r) { int mid = (l + r) / 2; if (list.get(mid) target ? l : -1; } int lowerBound(List list, int target) { if ..

Spring MVC 실행 순서

Dispatcher Servlet이 요청을 수신 요청을 수신하여 다른 컴포넌트에게 처리를 위임 Dispatcher Servlet은 Handdler Mapping에 어느 Controller를 사용할 것인지 문의 URL과 Mapping Dispatcher Servlet은 Controller에 요청을 전송 Controller는 요청을 처리한 후 결과를 반환 Business Logic을 수행한 후 결과 정보(Model)가 생성되어 이를 View에서 사용 수행 결과가 포함된 ModelAndView 객체를 Dispatcher Servlet에 반환 ModelAndViews는 실제 JSP 정보를 갖고 있지 않고, ViewResolver가 논리적 이름을 실제 JSP 정보로 변환 View는 결과 정보를 사용하여 화면을 표현

개발킹/Spring 2020.10.15

[백준/1712/JAVA] 손익분기점

import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int a = sc.nextInt(); int b = sc.nextInt(); int c = sc.nextInt(); int result = 0; if(b>=c) result = -1; else result = a/(c-b) + 1; System.out.println(result); } } 제목 보고 1차 당황 내용 자체는 쉬워서 안심했다가 4번 틀려서 2차 당황 ㅠㅠ;;;;;;;;;;;;;;;;;;; a+b*x < c*x인 경우에 x를 출력하도록 했었는데 외,, 툴렷을까,,,? 구글링 해서 겨우..

알고리즘왕/BOJ 2020.03.18