분류 전체보기 74

[백준] 28215: 대피소 (JAVA)

풀이너무 오랜만에 접한 알고리즘 문제 + 긴 지문으로 인해 시간이 좀 오래 걸렸다 .. 문제가 좀 헷갈리고 복잡해서 그렇지 사실 dfs를 적용할 수 있으면 간단하게 풀 수 있을 문제였다. 정답 코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class Main { static int N, K; static int[][] arr; static int minMaxDist = Integer.MAX_VALUE; // 가장 큰 거리값이 가장 작을 때의 거리 static int[] selected; // 선택..

알고리즘/백준 2025.04.07

[WebSquare5] 트리뷰(TreeView) 구현

https://docs.inswave.com/support/api/w5/5.0_1.2484A.20170126.120903/WebSquare.uiplugin.treeview/WebSquare.uiplugin.treeview.html WebSquare.uiplugin.treeview계층 구조를 가지는 데이터를 Tree형태로 출력하는 컴포넌트이다. 각 노드에 checkbox와 image(icon)를 넣을 수 있으며 TeeView 컴포넌트간 마우스의 Drag&Drop을 이용하여 Data(노드)를 주고 받을 수 있다.docs.inswave.com 공식문서에는 데이터를 어떻게 보내야 하는지 나와있지 않아서 좀 헤맸지만, 사실 간단하게 해결할 수 있었다.  [ label, value, depth ]  dataList..

WebSquare 2025.03.25

[SpringBoot] 파일 업로드 시 서버에 해당 파일이 즉시 적용되지 않는 문제 (정적 리소스 경로 설정)

지정된 폴더에는 파일 업로드가 되고 있는데, 서버에 즉각 반영이 되지 않고 재시작을 해야 반영되는 문제가 발생했다. 해결 방법@Configurationpublic class WebMvcConfig implements WebMvcConfigurer { @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler("/common/images/**") // URL 패턴 .addResourceLocations("file:src/main/resources/static/common/images/"); // 실제 리소스 경로 }}c..

Java/SpringBoot 2025.03.20

[SpringBoot] 게시글 검색, 삭제, 전시 순서 변경 API

1. 게시글 검색사진처럼 검색 조건이 카테고리, 기간(등록일시, 수정일시, 전시시작일시, 전시종료일시), 전시 여부(Y/N), 검색조건(등록자, 수정자, 내용, 제목) 까지 여러 개이기 때문에 mybatis의 동적 쿼리를 활용했다. dto@Getter@NoArgsConstructor@AllArgsConstructorpublic class PostListDto { private int postId; private int displayOrder; private String type; // 구분(일반/공지) private String category1; // category 1d private String category2; // category 2d private String..

Java/SpringBoot 2025.03.05

[SpringBoot] 게시판 DB 설계

프로젝트에 투입되면 사용할 툴일 WebSquare5, 웹스퀘어를 공부할 겸 게시판을 구현해보려고 한다. 1. PC 이미지 / 모바일 이미지 / 첨부파일2. 카테고리3. 전시 순서 이렇게 세 가지를 가장 고민을 많이 했다. 파일 저장자료를 찾아보고 프로젝트 DB도 살짝 보니까 파일을 저장할 때 보안상의 이유로 기존 파일명과 다르게 다른 이름으로 저장한다는 것을 알게 되었다.파일 확장자를 따로 뺀 설계도 있는 것 같지만 참여할 프로젝트 DB에서는 파일명에 한꺼번에 저장하고 있어 파일 확장자 컬럼을 따로 지정하지 않았다. 기획 상으로는 PC 이미지, 모바일 이미지, 첨부파일 모두 하나씩만 첨부가 가능하기 때문에 한 테이블에 모두 넣었다. 카테고리계속 하위 카테고리를 생성할 수 있는 경우에는 경로 열거 컬럼(e..

Java/SpringBoot 2025.02.27

[코드트리] 고대 문명 유적 탐사 (JAVA)

수천 년 동안 잊혀진 고대 문명의 유적을 발견하게 되었습니다. 이 유적지는 5×5 격자 형태로 되어 있으며, 각 칸에는 다양한 유물의 조각이 배치되어 있습니다. 유물 조각은 총 7가지 종류로, 각각 숫자 1부터 7로 표현됩니다.[1] 탐사 진행3×3 격자 선택당신은 고고학자로서 5×5 격자 내에서 3×3 격자를 선택하여 격자를 회전시킬 수 있습니다. 선택된 격자는 시계 방향으로 90도, 180도, 270도 중 하나의 각도만큼 회전시킬 수 있습니다. 단, 선택된 격자는 항상 회전을 진행해야만 합니다.예를 들어, 다음과 같이 유적지가 존재한다고 가정해보겠습니다.만약 회전 중심 좌표를 (3,3)으로 설정하고, 90도 회전하면 유적지는 다음과 같이 바뀌게 됩니다.회전 목표가능한 회전의 방법 중 (1) 유물 1차..

알고리즘 2024.12.05