본문 바로가기

분류 전체보기153

[알고리즘 문제 풀이] 백준2178 미로탐색 (자바) : BFS 문제 설명❝문제❞N×M크기의 배열로 표현되는 미로가 있다.101111101010101011111011미로에서 1은 이동할 수 있는 칸을 나타내고, 0은 이동할 수 없는 칸을 나타낸다. 이러한 미로가 주어졌을 때, (1, 1)에서 출발하여 (N, M)의 위치로 이동할 때 지나야 하는 최소의 칸 수를 구하는 프로그램을 작성하시오. 한 칸에서 다른 칸으로 이동할 때, 서로 인접한 칸으로만 이동할 수 있다.위의 예에서는 15칸을 지나야 (N, M)의 위치로 이동할 수 있다. 칸을 셀 때에는 시작 위치와 도착 위치도 포함한다.❝ 입력 ❞첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다.❝ 출력 ❞첫째 줄.. 2024. 7. 4.
[알고리즘 문제 풀이] 백준 1303 전쟁 - 전투 (자바) : BFS 문제 설명 ❝ 문제 ❞전쟁은 어느덧 전면전이 시작되었다. 결국 전투는 난전이 되었고, 우리 병사와 적국 병사가 섞여 싸우게 되었다. 그러나 당신의 병사들은 흰색 옷을 입고, 적국의 병사들은 파란색 옷을 입었기 때문에 서로가 적인지 아군인지는 구분할 수 있다. 문제는 같은 팀의 병사들은 모이면 모일수록 강해진다는 사실이다.N명이 뭉쳐있을 때는 N2의 위력을 낼 수 있다. 과연 지금 난전의 상황에서는 누가 승리할 것인가? 단, 같은 팀의 병사들이 대각선으로만 인접한 경우는 뭉쳐 있다고 보지 않는다.❝ 입력 ❞첫째 줄에는 전쟁터의 가로 크기 N, 세로 크기 M(1 ≤ N, M ≤ 100)이 주어진다. 그 다음 두 번째 줄에서 M+1번째 줄에는 각각 (X, Y)에 있는 병사들의 옷색이 띄어쓰기 없이 주어진다. .. 2024. 7. 4.
[알고리즘 문제 풀이] 백준 1260 DFS와 BFS (자바) 문제 설명 ❝문제❞그래프를 DFS로 탐색한 결과와 BFS로 탐색한 결과를 출력하는 프로그램을 작성하시오. 단, 방문할 수 있는 정점이 여러 개인 경우에는 정점 번호가 작은 것을 먼저 방문하고, 더 이상 방문할 수 있는 점이 없는 경우 종료한다. 정점 번호는 1번부터 N번까지이다. ❝입력❞첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사이에 여러 개의 간선이 있을 수 있다. 입력으로 주어지는 간선은 양방향이다. ❝출력❞첫째 줄에 DFS를 수행한 결과를, 그 다음 줄에는 BFS를 수행한 결과를 출력한다. V부터 방문된 점을 순서대로 .. 2024. 7. 3.
[스프링 MVC 1편] MVC 패턴 - 개요 인프런 김영한 님의 스프링 MVC 1편 강의를 보고 리뷰한 포스팅입니다.  MVC 패턴 - 개요1.너무 많은 역할    하나의 서블릿이나 JSP 만으로 비즈니스 로직과 뷰 렌더링까지 모두 처리하게 되면, 너무 많은 역할을 하게 되고 결과적으로 유지보수가 어려워짐.2. 변경의 라이프 사이클 UI를 일부 수정하는 일과 비즈니스 로직을 수정하는 일은 각각 다르게 발생할 가능성이 매우 높고 대부분 서로에게 영향을 주지 않음. ->라이프 사이클이 다른 부분을 하나의 코드로 관리하는 것은 유지보수하기 좋지 않음. 3. 기능 특화특히 JSP 같은 뷰  템플릿은 화면을 렌더링 하는데 최적화 되어 있기 때문에 이 부분의 업무만 담당하는 것이 효과적.4. Model View ControllerMVC 패턴은 지금까지 학습한.. 2024. 6. 29.
[GCP] GCS(Google Cloud Storage) Bucket 버킷 사용하기 + spring boot 에서 사용하기 오늘은 프로젝트를 하면서 배운 GCS Bucket 버킷을 사용하는 법에 대해서 포스팅 해보도록 하겠습니다. 1. GCS 버킷이 뭔지2. GCS 버킷을 왜 사용하는지3. GCS 버킷을 어떻게 사용하는지  What?GCS(Google Cloud Storage) 버킷은 Google Cloud Platform(GCP)에서 제공하는 객체 스토리지 서비스입니다.이 서비스는 전 세계 어디에서나(설정에 따라 다름) 데이터를 저장하고, 검색하며, 사용할 수 있게 해줍니다.  Why?저같은 경우에는 프로젝트에서 게시판 이미지를 저장하기 위해 사용하였습니다. 바이너리 파일형태로 DB에 저장하거나, 로컬 상의 디렉토리에 이미지를 저장하는 등의 문제점이 있습니다. 이때,1. 로컬 데이터 저장 시스템은 보통 한정된 용량과 처리 .. 2024. 6. 29.
[프로그래머스] Lv.2 구명 보트 (자바) 문제 설명  무인도에 갇힌 사람들을 구명보트를 이용하여 구출하려고 합니다. 구명보트는 작아서 한 번에 최대 2명씩 밖에 탈 수 없고, 무게 제한도 있습니다.예를 들어, 사람들의 몸무게가 [70kg, 50kg, 80kg, 50kg]이고 구명보트의 무게 제한이 100kg이라면 2번째 사람과 4번째 사람은 같이 탈 수 있지만 1번째 사람과 3번째 사람의 무게의 합은 150kg이므로 구명보트의 무게 제한을 초과하여 같이 탈 수 없습니다.구명보트를 최대한 적게 사용하여 모든 사람을 구출하려고 합니다.사람들의 몸무게를 담은 배열 people과 구명보트의 무게 제한 limit가 매개변수로 주어질 때, 모든 사람을 구출하기 위해 필요한 구명보트 개수의 최솟값을 return 하도록 solution 함수를 작성해주세요.제.. 2024. 6. 29.