분류 전체보기

Algorithm/백준

BOJ 1600 말이 되고픈 원숭이(JAVA) 🙊

문제 링크 1600번: 말이 되고픈 원숭이 첫째 줄에 정수 K가 주어진다. 둘째 줄에 격자판의 가로길이 W, 세로길이 H가 주어진다. 그 다음 H줄에 걸쳐 W개의 숫자가 주어지는데, 0은 아무것도 없는 평지, 1은 장애물을 뜻한다. 장애물이 있 www.acmicpc.net 문제 설명 (0, 0)에서 (H-1, W-1)까지의 최소 거리 단, 이동을 상하좌우 + K번만큼의 말의 이동 입력 K: 원숭이가 말의 이동방법으로 이동할 수 있는 횟수 W: 너비 H: 높이 출력 원숭이의 동작수의 최솟값, 시작점에서 도착점까지 갈 수 없는 경우엔 -1 출력 구조화 (0, 0)부터 bfs 말의 이동 방식으로 이동한 횟수가 K보다 작다면 말의 이동 방식으로 이동 방문체크 시에 이동한 횟수만큼의 배열을 만들어 각 경우의 수를..

Algorithm/백준

BOJ 15686 치킨 배달(JAVA) 🍗

구조화 전체 치킨집에서 M개 조합 조합마다 각 집의 최소 치킨 거리의 합(도시의 치킨 거리) 구함 최종적으로 최소 도시의 치킨 거리 출력 소스 코드 import java.io.*; import java.util.*; /* * 치킨집의 조합 * 1: 집 * 2: 치킨집 * 각 집마다의 치킨거리 구하기 */ public class Main { static int N, M, result = Integer.MAX_VALUE; static int[][] map; static int[][] pick; static List house = new ArrayList(); static List chicken = new ArrayList(); public static void main(String[] args) throws..

Algorithm/백준

BOJ 2206 벽 부수고 이동하기(JAVA) 🧱

구조화 벽을 부수고 움직일 수 있는 한 번의 기회가 있음 [x][y][0] → 벽을 안 부수고 이동 [x][y][1] → 벽을 한 번 부숨 if [x][y][1]이 true고 map[nx][ny] == 1 → 안됨 소스 코드 import java.io.*; import java.util.*; public class Main_2206_벽부수고이동하기 { static int N, M, result; static char[][] map; static boolean[][][] visited; // 상 하 좌 우 static int[][] way = {{-1,0},{1,0},{0,-1},{0,1}}; public static void main(String[] args) throws IOException { Sys..

Web/Spring

Spring MVC architecture🌺(JAVA)

MVC(Model View Controller) Model 요청에 대한 실직적인 처리 담당 service, dao(Data Access Object)(데이터 접근 객체) 단순 클래스 파일 View 클라이언트에게 보여줄 결과 페이지 요청 처리, DB 관련 코드X, 단순히 화면 출력 jsp, html Controller 요청 처리에 대한 전반적인 흐름 제어 Servlet 파일 흐름 제어 순서 요청 받기 요청 관련 파라미터 추출하고 필요하다면 가공 Model에 요청 처리 넘기기(메서드 호출) 처리 결과를 받아서 View 반환 넘겨줄 게 있다면 forward / 없다면 redirect Spring MVC Architecture

Algorithm/SWEA

SWEA 5656 벽돌 깨기(JAVA) 🔨

구조화 중복 순열로 몇번째 열에서 벽돌 깨기를 할 지 경우의 수 구하기 N번 (각 열마다 돌려서 가장 벽돌을 많이 깨는 열 구하기) 반복 벽돌을 깼으면 중력 작용 소스 코드 import java.io.*; import java.util.*; public class Solution_5656_벽돌깨기 { // T: 테스트케이스 횟수 // N: 벽돌 깨기 반복횟수, W: 열, H: 행 static int T, N, W, H, result; static int[][] map, copy; static int[] pick; // 상하좌우 static int[][] way = { { -1, 0 }, { 1, 0 }, { 0, -1 }, { 0, 1 } }; static boolean[][] visited; publi..

Algorithm/SWEA

SWEA 1949 등산로 조성(JAVA) ⛰

구조화 가장 높은 수부터 시작해서 작을 때만 이동 가능 특이케이스) 딱 한번 최대 -K를 해서 이동 가능 -> 1~K까지 빼서 모든 케이스 돌리기 0까지만 가능하고 음수는 안됨 소스 코드 import java.io.*; import java.util.*; public class Solution { static class Node{ /* * x, y 좌표 * num 해당 값 * flag 깎음 유무 */ int x, y, num; boolean flag; public Node(int x, int y, int num, boolean flag) { super(); this.x = x; this.y = y; this.num = num; this.flag = flag; } } static int T, N, K, t..

Algorithm/SWEA

SWEA 7793 오! 나의 여신님(JAVA) 👸

구조화 bfs start(수연이의 좌표) → end(여신님 좌표) 악마의 손아귀는 한 턴마다 *를 찾아 퍼지게 만들기 장애물은 ‘X’ 순서 ‘S’ 수연 좌표 이동 장애물 접근 X ‘*’ 악마의 손아귀 범위내에 들어가면 GAME OVER ‘D’ 여신님의 좌표에 도착하면 bfs 끝 악마의 손아귀 ‘*’ 찾아서 인접 행열에 퍼트리기 소스 코드 package day1006; import java.io.*; import java.util.*; public class Solution_7793_오나의여신님 { static int T, N, M; static char[][] map; static boolean[][] visited; static int suX, suY; static int godX, godY; stat..

Algorithm/SWEA

SWEA 4008 숫자 만들기(JAVA) 🧮

구조화 연산자 갯수 배열을 순열 사용하여 경우의 수 만들기 Boolean 배열 대신 배열의 값을 --하면서 중복 해결 연산자는 0: +, 1: -, 2: *, 3: / 로 정함 switch문 사용하여 각각의 연산자로 계산 소스 코드 import java.io.*; import java.util.*; public class Solution { static int T, N; static int min = Integer.MAX_VALUE; static int max = Integer.MIN_VALUE; // 0: +, 1: -, 2: *, 3: / static int[] operator; static int[] numbers; static int[] result; public static void main(S..

delayU
'분류 전체보기' 카테고리의 글 목록 (10 Page)