분류 전체보기

    [Spring Boot] Java DateTime Json 입력 시 400 error

    @RequestParam @DateTimeFormat(pattern = "yyyy-MM-dd") LocalDate date Json에 입력한 날짜를 String으로 인식하여 LocalDate와 연결이 되지 않는다. 컨트롤러에 해당 매핑을 추가하면 정상적으로 데이터를 조회할 수 있다.

    [AWS EC2] EC2에 할당된 public IP 확인하기

    curl http://169.254.169.254/latest/meta-data/public-ipv4 해당 명령어를 입력하면 ip 주소를 확인할 수 있다.

    [MySQL] CSV 파일 import - Boolean, null

    [MySQL] CSV 파일 import - Boolean, null

    CSV 파일을 MySQL 테이블로 import할 때 쿼리문이 아닌 workbench import wizard를 사용하면, boolean과 null 값을 처리하기가 어렵다. null 값 처리 처음에는 null 값을 비워놓았는데 null로 값이 삽입되지 않고 에러가 났다. 그래서 null이라고 데이터를 입력한 후 import하니 성공적으로 DB에 삽입이 되었다. boolean 값 처리 boolean값도 true, false로 삽입하였는데 잘 삽입되지 않아서 true는 1, false는 0으로 삽입하였다. 찾아보니 mysql에서는 boolean값을 0,1로 저장한다고 한다. https://freegians.tistory.com/entry/MySQL-BOOLEAN-TYPE-use-tip MySQL에서 BOOLE..

    [백준] 1744 - 수 묶기 (자바 Java)

    [Gold IV] 수 묶기 - 1744 문제 링크 성능 요약 메모리: 12968 KB, 시간: 116 ms 분류 많은 조건 분기(case_work), 그리디 알고리즘(greedy), 정렬(sorting) 문제 설명 길이가 N인 수열이 주어졌을 때, 그 수열의 합을 구하려고 한다. 하지만, 그냥 그 수열의 합을 모두 더해서 구하는 것이 아니라, 수열의 두 수를 묶으려고 한다. 어떤 수를 묶으려고 할 때, 위치에 상관없이 묶을 수 있다. 하지만, 같은 위치에 있는 수(자기 자신)를 묶는 것은 불가능하다. 그리고 어떤 수를 묶게 되면, 수열의 합을 구할 때 묶은 수는 서로 곱한 후에 더한다. 예를 들면, 어떤 수열이 {0, 1, 2, 4, 3, 5}일 때, 그냥 이 수열의 합을 구하면 0+1+2+4+3+5 =..

    [프로그래머스] 2023 KAKAO BLIND RECRUITMENT - 이모티콘 할인행사 (자바 Java)

    [unrated] 이모티콘 할인행사 - 150368 문제 링크 성능 요약 메모리: 72.9 MB, 시간: 0.04 ms 구분 코딩테스트 연습 > 2023 KAKAO BLIND RECRUITMENT 채점결과 정확성: 100.0 합계: 100.0 / 100.0 문제 설명 카카오톡에서는 이모티콘을 무제한으로 사용할 수 있는 이모티콘 플러스 서비스 가입자 수를 늘리려고 합니다. 이를 위해 카카오톡에서는 이모티콘 할인 행사를 하는데, 목표는 다음과 같습니다. 이모티콘 플러스 서비스 가입자를 최대한 늘리는 것. 이모티콘 판매액을 최대한 늘리는 것. 1번 목표가 우선이며, 2번 목표가 그 다음입니다. 이모티콘 할인 행사는 다음과 같은 방식으로 진행됩니다. n명의 카카오톡 사용자들에게 이모티콘 m개를 할인하여 판매합니..

    [백준] 14501 - 퇴사 (자바 Java)

    [Silver III] 퇴사 - 14501 문제 링크 성능 요약 메모리: 12892 KB, 시간: 108 ms 분류 브루트포스 알고리즘(bruteforcing), 다이나믹 프로그래밍(dp) 문제 설명 상담원으로 일하고 있는 백준이는 퇴사를 하려고 한다. 오늘부터 N+1일째 되는 날 퇴사를 하기 위해서, 남은 N일 동안 최대한 많은 상담을 하려고 한다. 백준이는 비서에게 최대한 많은 상담을 잡으라고 부탁을 했고, 비서는 하루에 하나씩 서로 다른 사람의 상담을 잡아놓았다. 각각의 상담은 상담을 완료하는데 걸리는 기간 Ti와 상담을 했을 때 받을 수 있는 금액 Pi로 이루어져 있다. N = 7인 경우에 다음과 같은 상담 일정표를 보자. 1일 2일 3일 4일 5일 6일 7일 Ti 3 5 1 1 2 4 2 Pi ..

    [JWT] JWT, Access Token, Refresh Token

    프로젝트를 진행하다 보면 로그인 기능을 구현할 때 JWT를 사용하게 된다. 이전 프로젝트에서는 JWT의 개념을 정확히 이해하지 않고 사용해서 이번 기회에 정리해보고자 한다. 인증 방식의 종류 1. Cookie 인증 방식 웹 사이트의 쿠키에 인증 정보를 저장하는 방식이다. 처음 브라우저가 로그인을 시도할 때, 로그인이 성공하면 서버가 응답 헤더에 로그인 정보를 담는다. 이후 클라이언트는 이 쿠키를 요청 헤더에 포함하여 보내고, 서버는 이 쿠키 정보를 바탕으로 클라이언트를 식별할 수 있다. 단점 쿠키는 브라우저에서 쉽게 확인할 수 있기 때문에 보안에 취약하다. 용량 제한이 있다. 브라우저 간 지원 형태가 다르다. 2. Session 인증 방식 세션은 쿠키와 달리 브라우저가 아니라 서버에 정보를 저장하는 방식..

    [백준] 2193 - 이친수 (자바 Java)

    [Silver III] 이친수 - 2193 문제 링크 성능 요약 메모리: 12872 KB, 시간: 120 ms 분류 다이나믹 프로그래밍(dp) 문제 설명 0과 1로만 이루어진 수를 이진수라 한다. 이러한 이진수 중 특별한 성질을 갖는 것들이 있는데, 이들을 이친수(pinary number)라 한다. 이친수는 다음의 성질을 만족한다. 이친수는 0으로 시작하지 않는다. 이친수에서는 1이 두 번 연속으로 나타나지 않는다. 즉, 11을 부분 문자열로 갖지 않는다. 예를 들면 1, 10, 100, 101, 1000, 1001 등이 이친수가 된다. 하지만 0010101이나 101101은 각각 1, 2번 규칙에 위배되므로 이친수가 아니다. N(1 ≤ N ≤ 90)이 주어졌을 때, N자리 이친수의 개수를 구하는 프로그..

    [백준] 2143 - 두 배열의 합 (자바 Java)

    [Gold III] 두 배열의 합 - 2143 문제 링크 성능 요약 메모리: 96108 KB, 시간: 604 ms 분류 이분 탐색(binary_search), 누적 합(prefix_sum) 문제 설명 한 배열 A[1], A[2], …, A[n]에 대해서, 부 배열은 A[i], A[i+1], …, A[j-1], A[j] (단, 1 ≤ i ≤ j ≤ n)을 말한다. 이러한 부 배열의 합은 A[i]+…+A[j]를 의미한다. 각 원소가 정수인 두 배열 A[1], …, A[n]과 B[1], …, B[m]이 주어졌을 때, A의 부 배열의 합에 B의 부 배열의 합을 더해서 T가 되는 모든 부 배열 쌍의 개수를 구하는 프로그램을 작성하시오. 예를 들어 A = {1, 3, 1, 2}, B = {1, 3, 2}, T=5인..

    [백준] 17182 - 우주 탐사선 (자바 Java)

    [Gold III] 우주 탐사선 - 17182 문제 링크 성능 요약 메모리: 11784 KB, 시간: 108 ms 분류 백트래킹(backtracking), 비트마스킹(bitmask), 플로이드–와샬(floyd_warshall), 그래프 이론(graphs) 문제 설명 우주 탐사선 ana호는 어떤 행성계를 탐사하기 위해 발사된다. 모든 행성을 탐사하는데 걸리는 최소 시간을 계산하려 한다. 입력으로는 ana호가 탐색할 행성의 개수와 ana호가 발사되는 행성의 위치와 ana호가 행성 간 이동을 하는데 걸리는 시간이 2차원 행렬로 주어진다. 행성의 위치는 0부터 시작하여 0은 행렬에서 0번째 인덱스에 해당하는 행성을 의미한다. 2차원 행렬에서 i, j 번 요소는 i 번째 행성에서 j 번째 행성에 도달하는데 걸리는..

출처: https://gmnam.tistory.com/157 [Voyager:티스토리]