본문 바로가기

전체 글130

[백준 알고리즘][자바] 2798번 : 블랙잭 & 브루트 포스(Brute Force) 브루트 포스 알고리즘의 개념 중의 하나로 영어의 뜻은 다음과 같습니다. Brute : 난폭한 + Force (힘) 이러한 뜻을 내포하고 있는 이유는 브루트 포스의 알고리즘은 정답으로 도출될 수 있는 모든 경우의 수를 탐색하는 알고리즘이기 때문입니다. 개념적으로 브루트 포스는 완벽한 알고리즘입니다. 왜냐하면 무조건 정답을 도출할 수 있기 때문이죠. 하지만 브루트 포스는 복잡도에 치명적인 단점을 가지고 있고 그에 따라 컴퓨터 자원도 문제가 될 수 있습니다. 브루트 포스를 이용하여 문제를 해결하기 위해서는 자료구조는 선형화시키는 것과 경우의 수를 빠트리지 않는 것이 중요하다고 할 수 있습니다. https://www.acmicpc.net/problem/2798 2798번: 블랙잭 첫째 줄에 카드의 개수 N(3 .. 2021. 12. 31.
[스프링 프레임워크]게시판 만들기 #7 : 로그인 본 포스팅은 스프링 프레임워크를 이용하여 기본적인 게시판을 만드는 방법을 설명합니다. 기본적인 내용은 지난 포스팅을 참고해주시기 바랍니다. 안녕하세요. 이번 포스팅에서는 Spring Framework에서 로그인 기능 구현에 대해 알아보도록 하겠습니다. 기존에 진행했던 게시판 구현에 대해서는 제 블로그를 참조해주시기 바랍니다. https://hyunipad.tistory.com/category/Java/Spring 'Java/Spring' 카테고리의 글 목록 HyuniPad hyunipad.tistory.com 먼저 자신의 데이터 베이스에 member 테이블을 구축하고, 임의의 데이터 하나를 추가해줍니다. 그 후에 Spring이 데이터를 담을 수 있도록 MemberDTO(MemberBean) 클래스를 추가.. 2021. 12. 5.
[백준 알고리즘][자바] 11729번 : 하노이 탑 이동 순서 https://www.acmicpc.net/problem/11729 11729번: 하노이 탑 이동 순서 세 개의 장대가 있고 첫 번째 장대에는 반경이 서로 다른 n개의 원판이 쌓여 있다. 각 원판은 반경이 큰 순서대로 쌓여있다. 이제 수도승들이 다음 규칙에 따라 첫 번째 장대에서 세 번째 장대로 www.acmicpc.net 알고리즘에서 유명한 하노이 탑입니다. 근데 저는 한 번도 접해보지 못한... 부족한 점이 많습니다. 단순히 최소 횟수를 출력하는 것이 아닌, 과정까지 출력되어야 하기 때문에 일단 예제부터 살펴보도록 하겠습니다. 입력으로는 원판의 개수가 주어지고 출력으로는 첫째 줄에는 최소 횟수를 출력하고 두 번째 줄부터는 그 과정을 출력합니다.' 다음은 원판이 3개 일때 입니다. 1번 장대에서 3번 .. 2021. 12. 4.
[백준 알고리즘][자바] 2447번 : 별 찍기 - 10 https://www.acmicpc.net/problem/2447 2447번: 별 찍기 - 10 재귀적인 패턴으로 별을 찍어 보자. N이 3의 거듭제곱(3, 9, 27, ...)이라고 할 때, 크기 N의 패턴은 N×N 정사각형 모양이다. 크기 3의 패턴은 가운데에 공백이 있고, 가운데를 제외한 모든 칸에 별이 www.acmicpc.net 재귀 함수를 이용한 별 찍기 문제입니다. 첫째 줄에 주어지는 숫자 N은 3의 거듭제곱입니다.(3, 9, 27, 81...) 크기가 3인 패턴은 위와 같이 가운데가 비어진 *** * * *** 패턴입니다. 만약 N이 3보다 큰 수(9, 27, 81..) 일 때는 크기 N/3의 패턴으로 둘러싼 형태입니다. 즉 문제에서 주어진 27의 패턴은 아래와 같습니다. 처음 문제를 접근.. 2021. 11. 28.
[스프링 프레임워크]게시판 만들기 #6 : 게시글 수정, 게시글 삭제 본 포스팅은 스프링 프레임워크를 이용하여 기본적인 게시판을 만드는 방법을 설명합니다. 기본적인 내용은 지난 포스팅을 참고해주시기 바랍니다. 2021.10.23 - [Java/Spring] - [스프링 프레임워크]게시판 만들기 #5 : 게시글 조회 [스프링 프레임워크]게시판 만들기 #5 : 게시글 조회 본 포스팅은 스프링 프레임워크를 이용하여 기본적인 게시판을 만드는 방법을 설명합니다. 기본적인 내용은 지난 포스팅을 참고해주시기 바랍니다. 2021.10.10 - [Java/Spring] - [스프링 프레임워크] hyunipad.tistory.com 이번 포스팅에서는 스프링 프레임워크에서 게시글의 수정과 삭제를 구현해보도록 하겠습니다. 사실 회사 내에서도 스프링을 사용하지 않고는 있어서 게시판 연습을 하면서.. 2021. 10. 23.
[스프링 프레임워크]게시판 만들기 #4-1 : 게시글 등록(수정) 2021.10.10 - [Java/Spring] - [스프링 프레임워크]게시판 만들기 #4 : 게시글 등록 [스프링 프레임워크]게시판 만들기 #4 : 게시글 등록 본 포스팅은 스프링 프레임워크를 이용하여 기본적인 게시판을 만드는 방법을 설명합니다. 기본적인 내용은 지난 포스팅을 참고해주시기 바랍니다. 2021.08.07 - [Web/Spring] - [스프링 프레임워크]게 hyunipad.tistory.com 저번 포스팅에서 만들었던 게시글 등록에서 수정할 부분이 있어서 포스팅을 작성합니다. 게시글을 등록할 때 BoardDTO 객체에 파라미터를 직접 전달하고 있었는데 생각 해보니 Spring에서 자동으로 데이터를 set 해주는 것을 깜빡하고 있었습니다. 아래는 기존에 작성된 BoardController... 2021. 10. 23.
[스프링 프레임워크]게시판 만들기 #5 : 게시글 조회 본 포스팅은 스프링 프레임워크를 이용하여 기본적인 게시판을 만드는 방법을 설명합니다. 기본적인 내용은 지난 포스팅을 참고해주시기 바랍니다. 2021.10.10 - [Java/Spring] - [스프링 프레임워크]게시판 만들기 #4 : 게시글 등록 [스프링 프레임워크]게시판 만들기 #4 : 게시글 등록 본 포스팅은 스프링 프레임워크를 이용하여 기본적인 게시판을 만드는 방법을 설명합니다. 기본적인 내용은 지난 포스팅을 참고해주시기 바랍니다. 2021.08.07 - [Web/Spring] - [스프링 프레임워크]게 hyunipad.tistory.com 저번 포스팅인 게시글 등록에 이어서 이번 포스팅에서는 게시물 조회를 구현해보도록 하겠습니다. list.jsp 저번시간까지에 만들었던 list.jsp에서 제목을 .. 2021. 10. 23.
[백준 알고리즘][자바] 10870번 : 피보나치 수 5 https://www.acmicpc.net/problem/10870 10870번: 피보나치 수 5 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 www.acmicpc.net 재귀 함수를 이용한 피보나치 수 구하기 문제입니다. 이번 문제는 친절히도 문제속에 N = 17일 때까지의 수가 나열되어 있습니다. Fibonacci(N) = Fibonacci(N-1) + Fibonacci(N-2) (단, N >= 2) 피보나치 수의 공식은 위와 같고, 공식의 해석은 2번째 피보나치 수부터는 바로 앞의 두 피보나치 수의 합이 됩니다. 위의 공.. 2021. 10. 23.
[백준 알고리즘][자바] 10872번 : 팩토리얼 https://www.acmicpc.net/problem/10872 10872번: 팩토리얼 0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오. www.acmicpc.net 정수 N의 팩토리얼을 구하는 문제입니다. 간단하게 for문을 이용하여 구현할 수 있지만, 이번 파트는 재귀 함수 이기 때문에, 재귀 함수를 이용하여 문제를 풀어보도록 하겠습니다. 제가 알고리즘을 시작한지 얼마 되지 않아서 재귀 함수 같은 부분에 매우 약하다는 것을 깨달았습니다. 그래서 차근차근 재귀에 대해 분해해보았습니다. 함수를 실행했을 때, 리턴 값은 아래와 같습니다. return factorial(N) * factorial(N-1) * factorial(N-2) * factorial(N-3).... 2021. 10. 23.
반응형