본문 바로가기

분류 전체보기60

[Java / 백준] 4781. 사탕 가게 문제 풀이이 문제는 knapsack으로 풀 수 있는 문제인데, 그렇게 하기 위해서는 행의 인덱스는 사탕의 번호를, 열의 인덱스는 현재까지 쓴 비용을 나타내도록 하는 배열을 선언해주어야 합니다.그런데 이 문제의 경우, 비용이 소수 2자리까지 있는 실수로 입력되므로, 100을 곱해서 정수로 바꿔서 문제를 해결했습니다.즉, n: 사탕의 종류, m: 비용, M: m에 100을 곱한 수라고 한다면dp[n][M]에는 n번째 사탕까지 고려했을 때, M원을 썼을 때에 최대 칼로리가 담기게 됩니다. 1. 입력 받기int n, m;StringTokenizer st = new StringTokenizer(br.readLine());n = Integer.parseInt(st.nextToken());m = (int)Math.r.. 2024. 7. 3.
[백준 / Java] 2141. 우체국 문제풀이1. 입력 받고 정렬하기N개의 집 위치와 사람 수를 입력 받아 List 자료구조에 저장합니다.N = Integer.parseInt(br.readLine());List list = new ArrayList();long slope = 0;for(int i=0; i집의 위치가 오름차순으로 들어온다는 보장이 없으므로, 집의 위치를 기준으로 리스트를 정렬해줍니다.list.sort((a, b) -> { return a[0] - b[0];});2. 언제가 최대일까?문제의 예제 입력을 기준으로 생각해보겠습니다.이 상황에서 우체국이 세워지는 위치를 x라고 한다면, "각 사람들까지의 거리의 합"은 아래 식과 같습니다.그렇다면 이 그래프의 값이 최소가 되는 지점을 찾으면 됩니다.x에 가능한 모든 수를 대입해보면 되.. 2024. 6. 25.
Beyond SW 7기 6주차 회고록 자기전에 10분만에 🐟Go 작성하기 도저언Keep수업 집중해서 듣는 중회의 없는 날엔 항상 학원에 남아서 공부하는 중집 가는 길에 간단한 일일 회고 작성 Problem자습할때나 주말에 집중력이 바닥이라는 것.. (이 짧은 회고를 쓰면서도 Context Switch 몇번한거지..)알고리즘 폼이 좋지 못함 (퇴화 중..)사실 이번주는 '내가 뭘하고 있는건지 모르겠다'는 생각이 많이 들었습니다.열심히 살고는 있지만 실속이 없는 느낌이랄까요..원래 강의를 들으면서 뭔가를 배울때 예습을 하지 않고 강의를 들은 다음 복습을 빡세게 돌리는 걸 선호하고, 그게 훨씬 효율적이라고 생각하는 사람인데 요즘은 그렇게 하고 있지 못해서 좀 마음이 불편합니다.동아리에서 하는 사이드 프로젝트를 위해 자습시간에 spring dat.. 2024. 6. 24.
[Spring / Error] HttpMediaTypeNotAcceptableException: No acceptable representation org.springframework.web.HttpMediaTypeNotAcceptableException: No acceptable representation게시판 프로젝트를 만들면서, 글을 조회했을 때 해당 아이디의 글이 없으면 적절한 에러코드와 에러메시지를 내려주는 부분의 코드를 작성하고 테스트하던 중, 위와 같은 예외가 발생하면서 에러 메시지가 제대로 내려오지 않았습니다.  PostService.java 중 코드 일부 public Page findAllPostsNotDeleted(Pageable pageable) { return postRepository.findByDelYn(false, pageable).map(PostDto::new); } public PostDto findPostB.. 2024. 6. 22.
[Java] Reflection을 활용해서 검증 어노테이션 구현하기 ReflectionReflection이란?컴파일 타임이 아닌 런타임에 클래스, 메서드, 필드 등의 정보를 조회하고 검사할 수 있도록 하는 자바의 기Reflection의 주요 기능클래스 정보(클래스 이름, 메서드, 필드 등)을 런타임에 알 수 있음런타임에 해당 클래스의 객체 생성 가능런타임에 메서드 호출하능런타임에 필드에 접근하고 수정할 수 있음예를 들어 JPA 기술을 쓰면, DB에서 값을 찾아오고 그 값으로 객체를 만들어 주는데 이때 리플렉션으로 private 변수에 직접 접근하여 값을 할당합니다.객체와 Json 사이의 직렬화/역직렬화를 도와주는 Jackson 라이브러리도 리플렉션이라는 기능을 활용합니다.Reflection 활용 예제아래와 같은 Calculator 클래스를 만들고, 리플렉션의 여러 기능들.. 2024. 6. 20.
Beyond SW 7기 5주차 회고록 이틀 정도 늦었지만 5주차 회고록 시작합니다. :)5주차부터는 KPT 포맷으로 회고를 작성해보려고 합니다.Keep알고리즘 문제를 꾸준히 풀고 있다는 것대부분 쉬운 문제들이긴 하지만,, 그래도 하루에 한문제 이상 계속 풀고 있다는 것에 의의가 있는 것 같습니다.수업 시간에 필기 열심히 하고 있음Spring Data JPA도 틈틈이 공부하고 있음Problem디프만 팀 회의가 꽤 오래 걸리고 잦아서 공부할 시간이 점점 부족하다는 점이번 주는 부트 캠프 내용을 시간 내서 복습하지 못했다는 점Spring Data JPA 공부도 틈틈이 하고 있기는 하지만, 공부량이 많이 부족하다는 점주말에 회고록을 쓰지 못하고 화요일인 오늘 쓰고 있다는 점,,ㅎㅎTry디프만 팀 회의가 꽤 오래 걸리고 잦아서 공부할 시간이 점점 부.. 2024. 6. 18.