분류 전체보기 (107) 썸네일형 리스트형 [BaekJoon 13144] List of Unique Numbers 안녕하세요. 오늘은 백준 13144 List of Unique Numbers라는 문제를 풀어보도록 하겠습니다. 해당 문제는 아래의 링크에서 확인하실 수 있습니다. https://www.acmicpc.net/problem/13144 13144번: List of Unique Numbers 길이가 N인 수열이 주어질 때, 수열에서 연속한 1개 이상의 수를 뽑았을 때 같은 수가 여러 번 등장하지 않는 경우의 수를 구하는 프로그램을 작성하여라. www.acmicpc.net 문제를 살펴보면, 어떠한 수열이 주어지고, 해당 수열에서 같은 숫자가 없는 수열의 개수를 출력하는 문제입니다. 우선 이중 포문으로 구현을 하게 되면 O(N^2)의 시간 복잡도를 갖게 됩니다. N > n; vector v(n); for(int i.. [Spring/SpringBoot] SpringSecurity를 API Server에 적용하기(JWT) 안녕하세요. 오늘 포스팅에서는 Rest Api Server에 Spring Security를 적용시켜 인증된 권한을 가진 유저에게만 요청을 허용하는 방법에 대해 알아보도록 하겠습니다. 우선 spring security를 사용하시려면 gradle 기준 다음의 dependency를 추가하셔야 합니다. implementation 'org.springframework.boot:spring-boot-starter-security' 1. Spring Security 스프링에서 인증 및 권한 부여를 쉽게 도와주는 spring security framework를 제공해줍니다. spring boot 기반 프로젝트를 진행 중이시라면 별도의 보안 관련 처리 없이 spring security를 적용하여 사용하실 수 있습니다. .. [BeakJoon 1285] 동전 뒤집기 안녕하세요. 오늘은 백준 1285번 동전 뒤집기라는 문제를 풀어보겠습니다. 문제는 https://www.acmicpc.net/problem/1285 1285번: 동전 뒤집기 첫째 줄에 20이하의 자연수 N이 주어진다. 둘째 줄부터 N줄에 걸쳐 N개씩 동전들의 초기 상태가 주어진다. 각 줄에는 한 행에 놓인 N개의 동전의 상태가 왼쪽부터 차례대로 주어지는데, 앞면이 위 www.acmicpc.net 위 링크에서 보실 수 있습니다. 문제를 요약하면 다음과 같습니다. 초기 상태가 주어졌을 때, 행 혹은 열 단위로 뒤집기를 수행합니다. 그 결과 뒷면이 보이는 수가 가장 적은 경우를 찾는 문제입니다. 저는 처음 이 문제를 보았을 때 인풋의 범위를 보고 당연히 완전 탐색을 해야지라고 생각을 했는데, 문제는 종료 조건.. [BaekJoon 14319] 종이조각 안녕하세요. 오늘은 백준 14319번 종이조각이라는 문제를 풀어보도록 하겠습니다. 해당 문제는 아래의 링크에서 확인하실 수 있습니다. https://www.acmicpc.net/problem/14391 14391번: 종이 조각 영선이는 숫자가 쓰여 있는 직사각형 종이를 가지고 있다. 종이는 1×1 크기의 정사각형 칸으로 나누어져 있고, 숫자는 각 칸에 하나씩 쓰여 있다. 행은 위에서부터 아래까지 번호가 매겨져 있고, www.acmicpc.net 우선 문제를 살펴보면 인풋의 범위가 매우 작습니다. 4x4까지이기 때문에 완전 탐색으로 충분히 풀리는 문제입니다. 또한 이 문제가 완전탐색에 적합한 이유는 가로 방향과 세로 방향밖에 없습니다. 즉 저희가 흔히 생각하는 이런 모양이나 이런 모양은 나오지 않습니다. .. [Spring/SpringBoot] RestController에서 Validation Api 사용하기 + MethodArgumentNotValidException 예외 처리하기 안녕하세요. 오늘은 Validation(유효성 검사)의 예외처리에 대해 살펴보겠습니다. 이번에 스프링으로 프로젝트를 진행하게 되었는데, Account 관련 처리를 맡게 되어 회원가입에 관한 Validation 인증을 구현해야 하는 상황이었습니다. ControllerAdvice에서 class를 받아 구현하려 하니, 잘 작동이 되지 않아 제가 사용한 방법을 포스팅하려 합니다. 제가 사용한 SignUpForm은 다음과 같이 정의하였습니다. package com.SCAR.Account; import lombok.Data; import org.hibernate.validator.constraints.Length; import javax.validation.constraints.Email; import javax... [Spring/SpringBoot] 예외처리 Controller 정의하기 안녕하세요. 이번 포스팅에서는 restful service에서 발생하는 예외처리를 하는 방법에 대해 알아보려 합니다. 우선 사용할 샘플 코드는 다음과 같습니다. @GetMapping("/Account/{id}") public Account retrieveUser(@PathVariable int id) { Optional findAccount = accountRepository.findById(id); if(findAccount.isEmpty()) return null; return findAccount.get(); } 저의 Account Controller에서 /Account/{id}라는 주소로 GetMapping을 받겠습니다. 내부적으로는 JpaRepository를 구현한 accountRepositor.. [BaekJoon 3015] 오아시스 재결합 안녕하세요. 오늘은 백준 3015번 오아시스 재결합이라는 문제를 알아보겠습니다. 해당 문제는 https://www.acmicpc.net/problem/3015 3015번: 오아시스 재결합 첫째 줄에 줄에서 기다리고 있는 사람의 수 N이 주어진다. (1 ≤ N ≤ 500,000) 둘째 줄부터 N개의 줄에는 각 사람의 키가 나노미터 단위로 주어진다. 모든 사람의 키는 231 나노미터 보다 작다. 사람 www.acmicpc.net 아래의 링크에서 확인하실 수 있습니다. 문제를 보시면, 시간제한이 1초이고, N의 범위가 500000입니다. 따라서 위 문제는 O(N^2)의 알고리즘으로 해결할 수 없으며, 기본적으로 현재를 기준으로 과거의 값을 돌아보는 형식의 로직이기 때문에 Stack을 사용하는 문제임을 추측할 .. [BaekJoon 15684] 사다리 조작 안녕하세요. 이번 포스팅에서는 백준 15684번 사다리 조작이라는 문제에 대해 포스팅을 해보겠습니다. 해당 문제는 https://www.acmicpc.net/problem/15684 15684번: 사다리 조작 사다리 게임은 N개의 세로선과 M개의 가로선으로 이루어져 있다. 인접한 세로선 사이에는 가로선을 놓을 수 있는데, 각각의 세로선마다 가로선을 놓을 수 있는 위치의 개수는 H이고, 모든 세로선 www.acmicpc.net 이 링크에서 참고하실 수 있습니다. (문제가 너무 길어요 ㅜㅜ) 그렇다면 문제를 읽으셨다고 가정하고, 이 문제를 조금 단계별로 구조화해보겠습니다. 1. 사다리를 배열에 적절히 매핑하기 2. 경우의 수 구하기 3. 모든 경우의 수에 대하여 탐색 1. 사다리를 배열에 적절히 매핑하기 사.. 이전 1 ··· 6 7 8 9 10 11 12 ··· 14 다음