728x90 자바11 [백준] 17136번 색종이 붙이기 - JAVA ✍️풀이방식 1. 문제 분석 1이 있는 칸에만 색종이를 붙여야 하고 칸에 딱 맞게 붙여야 하는 것. 각 종류의 색종이를 5개씩 가지고 있기 때문에 한 종류 마다 5개까지 사용할 수 있다. 즉 전체 색종이 개수는 25개이다. 색종이를 붙일수 있는 경우의 수를 백트래킹 알고리즘을 이용하여 구하면 된다. 지금까지 연습했던 문제들 중에 가장 난이도가 높은 문제였던 것 같다... 2. 풀이 과정 1. 색종이를 붙일 수 있는 1번째 위치를 찾는다. 2. 탐색 위치는 왼쪽 위에서 시작하여 오른쪽으로 이동하고, 오른쪽 끝에 도달하면 한 줄 아래로내려가서 다시 왼쪽부터 이동하는 방식으로 진행한다. (가지치기를 극대화 하기 위해서 큰 색종이부터 탐색한다) 3. 현재 선택한 위치에 가지고 있는 색종이.. 2025. 9. 15. [백준] 9663번 N-Queen 배치하기 - JAVA ✍️풀이방식 1. 문제 분석 N-queen은 전형적인 백트래킹으로 풀 수 있는 문제이다. 크기 N × N 체스판 위에 퀸 N개를 서로 공격하지 않게 놓는 문제. 체스에서 퀸은 가로, 세로, 대각선으로 움직일 수 있으므로 같은 행, 열, 대각선에는 퀸이 동시에 존재할 수 없음. 즉 같은 행에는 퀸이 1개만 존재할 수 있음. 모든 행에 퀸을 1개씩 배치해야 N개의 퀸이서로 공격하지 않도록 놓을 수 있다. 2. 풀이 과정 퀸을 한 행씩 배치하면서, 현재까지 놓은 퀸이 조건을 만족하지 않으면 즉시 가지치기(백트래킹) -> 탐색을 종료하고 이전 단계로 돌아간다. 마지막 행까지 퀸 배치 성공하면 경우의 수 +1, 백트래킹 전체를 종료하면 경우의 수를 출력한다. 맨 위 행부터 시작해 각 행마다 퀸을.. 2025. 9. 12. [백준] 15649번 N과 M - JAVA ✍️풀이방식 1. 문제 분석 1부터 N까지 자수 중에서 중복 없이 M개를 고른 수열또한 수열은 사전 순으로 증가하는 순서, 즉 오름차순으로 정렬하여서 출력해야한다. 현재 수열에서 추가할 수 있는 자연수를 탐색, 자연수가 기존 수열에서 이미 사용한 수라면 해당 수를 선택한 탐색은 진행하지 않고 이전 단계로 돌아간다(가지지치기) 수열의 길이가 M이 될 때 수열의 정보를 출력한다 . 2. 풀이 과정 일단 작은 수 부터 탐색하도록 기준을 잡으면 오름차순 조건을 자연스럽게 만족할 수 있다. 가지치기 기준은 이미 수열에 포함한 수(중복 허용 x) 이전 단계로 돌아가는 로직은 재귀 함수 형태로 탐색하면 자연스럽게 구현된다. 🖥️문제풀이 import java.io.*;import java.util.*.. 2025. 9. 11. [Spring Boot] 3주차 스터디 : 6장 AWS 서버 환경을 만들어보자 - AWS EC2 ✏️ 스프링 부트와 AWS로 혼자 구현하는 웹 서비스 책을 보면서 스터디 한 내용을 정리하였습니다 https://www.yes24.com/product/goods/83849117 스프링 부트와 AWS로 혼자 구현하는 웹 서비스 - 예스24가장 빠르고 쉽게 웹 서비스의 모든 과정을 경험한다. 경험이 실력이 되는 순간!이 책은 제목 그대로 스프링 부트와 AWS로 웹 서비스를 구현한다. JPA와 JUnit 테스트, 그레이들, 머스테치, 스프링www.yes24.com 6장 AWS 서버 환경을 만들어보자 - AWS EC2 외부에서 본인이 만든 서비스에 접근하려면 24시간 작동하는 서버가 필수집에 PC를 구동시킨다호스팅 서비스 (CAFE 24, 코리아 호스팅 등) 을 이용한다클라우드 서비스(AWS, AZU.. 2025. 1. 24. [Spring Boot] 3주차 스터디 : 5장 스프링 시큐리티와 OAuth 2.0으로 로그인 기능 구현하기 ✏️ 스프링 부트와 AWS로 혼자 구현하는 웹 서비스 책을 보면서 스터디 한 내용을 정리하였습니다 https://www.yes24.com/product/goods/83849117 스프링 부트와 AWS로 혼자 구현하는 웹 서비스 - 예스24가장 빠르고 쉽게 웹 서비스의 모든 과정을 경험한다. 경험이 실력이 되는 순간!이 책은 제목 그대로 스프링 부트와 AWS로 웹 서비스를 구현한다. JPA와 JUnit 테스트, 그레이들, 머스테치, 스프링www.yes24.com 5장 스프링 시큐리티와 OAuth 2.0으로 로그인 기능 구현하기 💜스프링 시큐리티와 스프링 시큐리티 Oauth2 클라이언트 💠스프링 시큐리티란?막강한 인증과 인가 기능을 가진 프레임워크스프링 기반의 애플리케이션에서는 보안을 위한.. 2025. 1. 24. [Spring Boot] 1주차 스터디 : 2장 스프링 부트에서 테스트 코드를 작성하자 ✏️ 스프링 부트와 AWS로 혼자 구현하는 웹 서비스 책을 보면서 스터디 한 내용을 정리하였습니다 2장 스프링 부트에서 테스트 코드를 작성하자 💜테스트 코드 작성💠TDD테스트가 주도하는 개발테스트 코드를 먼저 작성하는 것부터 시작💠레드 그린 사이클항상 실패하는 테스트를 먼저 작성 (Red)테스트가 통과하는 프로덕션 코드를 작성 (Green)테스트가 통과하면 프로덕션 코드를 리팩토링(Refactor) 💠단위 테스트기능 단위의 테스트 코드를 작성하는 것 💠빠른 피드백코드를 작성하고프로그램 실행한 뒤Postman과 같은 API 테스트 도구로 HTTP 요청요청 결과를 System.out.println()으로 눈으로 검증결과가 다르면 다시 프로그램(Tomcat)을 중지하고 코드를 수정한다2~.. 2025. 1. 14. 이전 1 2 다음 728x90