본문 바로가기

전체 글76

DDL, INDEX, VIEW 1. DDL - Date Definition Language : 데이터 정의어 - CREATE, ALTER, DROP, RENAME ※ 문법 참고 : https://computer-science-student.tistory.com/179 DDL 명령어 - 생성(CREATE), 수정(ALTER), 삭제(DROP, TRUNCATE) DDL(Data Definition Language, 데이터 정의어) - DDL은 데이터를 정의하는 언어로서 '데이터를 담는 그릇을 정의하는 언어' - 테이블과 같은 데이터 고조를 정의하는 데 사용되는 명령어들로 특정 구조를 computer-science-student.tistory.com 2. INDEX - 테이블에 대한 동작의 속도를 높여주는 자료구조 - 책의 찾아보기와 같이.. 2024. 4. 8.
0 만들기(BJ_G5_7490) 1. 문제 링크 https://www.acmicpc.net/problem/7490 7490번: 0 만들기 각 테스트 케이스에 대해 ASCII 순서에 따라 결과가 0이 되는 모든 수식을 출력한다. 각 테스트 케이스의 결과는 한 줄을 띄워 구분한다. www.acmicpc.net 2. 나의 코드 메모리: 20208kb 시간: 252ms 코드 길이: 1929B 시간 복잡도 : O(3^N) 설명:N까지의 수까지 +, -, 공백 이렇게 3가지 경우를 모두 고려하여 dfs를 활용 import java.util.Scanner; public class BJ_7490 { static int N; public static void main(String[] args) { Scanner sc = new Scanner(Syste.. 2024. 4. 7.
주사위 굴리기2(BJ_G3_23288) 1. 문제 링크 https://www.acmicpc.net/problem/23288 23288번: 주사위 굴리기 2 크기가 N×M인 지도가 존재한다. 지도의 오른쪽은 동쪽, 위쪽은 북쪽이다. 지도의 좌표는 (r, c)로 나타내며, r는 북쪽으로부터 떨어진 칸의 개수, c는 서쪽으로부터 떨어진 칸의 개수이다. 가장 왼 www.acmicpc.net 2. 나의 코드 메모리: 35716kb 시간: 236ms 코드 길이: 3323B 시간 복잡도 : O(K * (N * M)) 설명 - 구현문제 - 주사위를 배열로 표현 - 점수는 BFS로 구하기 import java.awt.Point; import java.io.BufferedReader; import java.io.IOException; import java.io.. 2024. 4. 3.
이모티콘 할인행사(PG_LV2_150368) 1. 문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/150368 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 나의 코드 메모리: 70MB 시간: 0.04ms 시간 복잡도 : O(4^N) 설명 - 각 이모티콘의 할인율을 부분집합을 사용 - 부분집합으로 만들 수 있는 모든 경우의 수를 계산 class Solution { static int[] input; static int maxSubscriber, maxAmount; public int[] solution(int[][] users,.. 2024. 4. 2.
플로이드 워셜 1. 코드 예제 package com.problem.BOJ; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class BJ_11404 { static int n, m; static int[][] map; public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = null; n = Integer.pars.. 2024. 3. 29.
최장 증가 부분 수열 (LIS) 1. 문제 - {3, 2, 6, 4, 5, 1} 다음과 같은 배열에서 순서를 유지하면서 크기가 점진적으로 커지는 가장 긴 부분은? (ex. 2, 4, 5) - 부분집합 사용 시 시간복잡도 : O(2 ^ N) - 참고 : https://chanhuiseok.github.io/posts/algo-49/ 알고리즘 - 최장 증가 부분 수열(LIS) 알고리즘 컴퓨터/IT/알고리즘 정리 블로그 chanhuiseok.github.io - 참고 : https://source-sc.tistory.com/14 [1][LIS : 최장증가수열 알고리즘] - DP 를 이용한 알고리즘 (Longest Increasing Subsequence Algorithm) LIS Algorithm LIS 알고리즘 (Longest Increa.. 2024. 3. 27.
우주신과의 교감(BJ_G3_1774) 1. 문제 링크 https://www.acmicpc.net/problem/1774 1774번: 우주신과의 교감 (1,1) (3,1) (2,3) (4,3) 이렇게 우주신들과 황선자씨의 좌표가 주어졌고 1번하고 4번이 연결되어 있다. 그렇다면 1번하고 2번을 잇는 통로를 만들고 3번하고 4번을 잇는 통로를 만들면 신들과 선자씨끼 www.acmicpc.net 2. 나의 코드 메모리: 43928KB 시간: 760ms 코드 길이: 3556B 시간 복잡도 : O(N^2) >> 조합 생성 시 설명 - 각각의 노드를 입력 받은 후 조합 알고리즘을 사용하여 각 노드들의 거리를 계산해서 edgeList에 넣어주기 - 리스트 정렬 - 미리 연결된 코드는 union처리 해주기 - 크루스칼 알고리즘을 사용하여 최소 연결 거리 .. 2024. 3. 26.
Knapsack 1. 0-1 Knapsack 유형 - 배낭에 물건을 통째로 담아야 하는 문제 - 물건을 쪼갤 수 없는 경우 - 참고 : https://howudong.tistory.com/106 배낭 문제(KnapSack Problem) 그림으로 쉽게 이해하기 배낭 알고리즘이란? 배낭 문제(Knapsack)는 n개의 물건과 배낭 있을 때, 각 물건에는 가치와 무게가 존재한다. 또한 각 물건은 1개씩만 있다. 배낭에는 담을 수 있는 최대 용량이 존재한다. 이러한 howudong.tistory.com 2. Fractional Knapsack - 물건을 부분적으로 담는 것이 허용되는 문제 - 물건을 쪼갤 수 있는 경우 3. 배낭 문제 해결 (물건, 물건의 무게, 물건의 가치, 배낭의 용량) - 점화식 - 코드 예제 impor.. 2024. 3. 26.
HttpSession, Cookie, EL, JSTL 1. session - jakarta.servlet.http.HttpSession - 방문자가 웹 서버에 접속해 있는 상태를 하나의 단위로 보고 그것을 세션이라 한다. - WAS의 memory에 Object의 형태로 저장 - memory가 허용하는 용량까지 제한 없이 저장 가능 - ex) 로그인 유지, 장바구니 - HttpSession 사용법 ※ 참고 : https://enai.tistory.com/29 세션(Session) 이용하는 방법 세션은 클라이언트 별로 서버에 저장되는 정보이다. 사용자 컴퓨터에 저장되던 쿠키와 다르게 서버에 저장되므로, 비교적 보안이 필요한 데이터는 쿠키보다 세션에 저장한다. 서버가 종료되거 enai.tistory.com 2. Cookie - jakarta.servlet.htt.. 2024. 3. 21.