분류 전체보기
-
DB, DBMS 와 RDBMS의 차이? 📌현업에서 DB 를 항상 사용하고 있다. 항상 사용해 오고는 있지만 "DB란 무엇이고 그거에 연관된 개념이 무엇이 있을까" 라는스스로에 대한 물음에 명확히 대답할 수 없었다. 개념을 정리하고 기초를 갖춰보고자 이번 포스팅을 준비했다. 🔗 DB, 데이터베이스 흔히 들을 수 있는 데이터베이스 (Database) 는 데이터의 저장소라고 정의할 수 있다.이 데이터베이스를 운영하고 관리하는 소프트웨어가 DBMS (Database Management System), 즉, 데이터베이스를 관리하는 시스템이다.계층형, 망형, 관계형 DBMS 중 대부분의 DBMS가 테이블로 구성된 관계형 DBMS 의 형태로 사용되는데이를 RDBMS 라고 한다. 이를 하나씩 정리해보자. 🔗 DB..
[Database] DB, DBMS 와 RDBMS의 차이DB, DBMS 와 RDBMS의 차이? 📌현업에서 DB 를 항상 사용하고 있다. 항상 사용해 오고는 있지만 "DB란 무엇이고 그거에 연관된 개념이 무엇이 있을까" 라는스스로에 대한 물음에 명확히 대답할 수 없었다. 개념을 정리하고 기초를 갖춰보고자 이번 포스팅을 준비했다. 🔗 DB, 데이터베이스 흔히 들을 수 있는 데이터베이스 (Database) 는 데이터의 저장소라고 정의할 수 있다.이 데이터베이스를 운영하고 관리하는 소프트웨어가 DBMS (Database Management System), 즉, 데이터베이스를 관리하는 시스템이다.계층형, 망형, 관계형 DBMS 중 대부분의 DBMS가 테이블로 구성된 관계형 DBMS 의 형태로 사용되는데이를 RDBMS 라고 한다. 이를 하나씩 정리해보자. 🔗 DB..
2023.07.26 -
base64_encode 란 ? base64_encode — Encodes data with MIME base64 PHP: base64_encode - Manual You can escape '+', '/' and '=' symbols using two simple functions: $value) if($m[$i + 1]) return $value; }, $id); return base64_decode($id);}?>this functions escapes symbol 'A' as 'AA', '+' as 'AB', '/' as www.php.net MIME base64로 데이터를 인코딩, 공식 문서에 나와있는 내용이다. 모든 정보를 64개 문자로 구성된 64진수로 바꾸는 것으로 a-z, A-Z, 0-9..
[PHP] base64_encode 란base64_encode 란 ? base64_encode — Encodes data with MIME base64 PHP: base64_encode - Manual You can escape '+', '/' and '=' symbols using two simple functions: $value) if($m[$i + 1]) return $value; }, $id); return base64_decode($id);}?>this functions escapes symbol 'A' as 'AA', '+' as 'AB', '/' as www.php.net MIME base64로 데이터를 인코딩, 공식 문서에 나와있는 내용이다. 모든 정보를 64개 문자로 구성된 64진수로 바꾸는 것으로 a-z, A-Z, 0-9..
2023.07.24 -
https://www.acmicpc.net/problem/11659 11659번: 구간 합 구하기 4 첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을 구해야 하는 구간 i와 j www.acmicpc.net 11659, 구간 합 구하기 4 [ 난이도 : 실버 3 ] 이번 문제는 누적합을 사용해서 풀어보겠다. N과 M의 범위가 1 - 100,000 이다. 이번 문제에선 i, j 를 for문을 통해서 구하게 되면 시간 초과가 발생할 수 있기 때문에 누적합을 통해 풀어보겠다. 예를 들어 i, j 가 각각 2 와 3으로 주어지고 arr이라는 int 배열에 누적합을 구한다는 가정을 해보..
(JAVA) [BOJ]백준 11659번, 구간 합 구하기 4https://www.acmicpc.net/problem/11659 11659번: 구간 합 구하기 4 첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을 구해야 하는 구간 i와 j www.acmicpc.net 11659, 구간 합 구하기 4 [ 난이도 : 실버 3 ] 이번 문제는 누적합을 사용해서 풀어보겠다. N과 M의 범위가 1 - 100,000 이다. 이번 문제에선 i, j 를 for문을 통해서 구하게 되면 시간 초과가 발생할 수 있기 때문에 누적합을 통해 풀어보겠다. 예를 들어 i, j 가 각각 2 와 3으로 주어지고 arr이라는 int 배열에 누적합을 구한다는 가정을 해보..
2023.06.14 -
https://www.acmicpc.net/problem/4949 4949번: 균형잡힌 세상 각 문자열은 마지막 글자를 제외하고 영문 알파벳, 공백, 소괄호("( )"), 대괄호("[ ]")로 이루어져 있으며, 온점(".")으로 끝나고, 길이는 100글자보다 작거나 같다. 입력의 종료조건으로 맨 마지막에 www.acmicpc.net 4949, 균형잡힌 세상 [ 난이도 : 실버 4 ] 이번 문제는 스택을 사용해서 풀어보겠다. # Process input : 입력받은 String 이 "." 이 아닐 때까지 입력을 받고 solve 라는 메서드를 통해 답을 도출한다. static String str; static void input() { while(true) { str = scan.nextLine(); if(..
(JAVA) [BOJ]백준 4949번, 균형잡힌 세상https://www.acmicpc.net/problem/4949 4949번: 균형잡힌 세상 각 문자열은 마지막 글자를 제외하고 영문 알파벳, 공백, 소괄호("( )"), 대괄호("[ ]")로 이루어져 있으며, 온점(".")으로 끝나고, 길이는 100글자보다 작거나 같다. 입력의 종료조건으로 맨 마지막에 www.acmicpc.net 4949, 균형잡힌 세상 [ 난이도 : 실버 4 ] 이번 문제는 스택을 사용해서 풀어보겠다. # Process input : 입력받은 String 이 "." 이 아닐 때까지 입력을 받고 solve 라는 메서드를 통해 답을 도출한다. static String str; static void input() { while(true) { str = scan.nextLine(); if(..
2023.06.13 -
https://www.acmicpc.net/problem/1158 1158번: 요세푸스 문제 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) www.acmicpc.net 1158, 요세푸스 문제 [ 난이도 : 실버 4 ] 이번 문제는 큐를 사용해서 풀어보겠다. # Process input : N 과 M 을 입력받고, N만큼의 수를 큐에 넣어준다. static int N, M; static Queue Q = new LinkedList(); static void input() { N = scan.nextInt(); M = scan.nextInt(); for(int i=1; i
(JAVA) [BOJ]백준 1158번, 요세푸스 문제https://www.acmicpc.net/problem/1158 1158번: 요세푸스 문제 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) www.acmicpc.net 1158, 요세푸스 문제 [ 난이도 : 실버 4 ] 이번 문제는 큐를 사용해서 풀어보겠다. # Process input : N 과 M 을 입력받고, N만큼의 수를 큐에 넣어준다. static int N, M; static Queue Q = new LinkedList(); static void input() { N = scan.nextInt(); M = scan.nextInt(); for(int i=1; i
2023.06.11 -
https://www.acmicpc.net/problem/22233 22233번: 가희와 키워드 1번째 글을 쓰고 난 후에, 메모장에 있는 키워드는 set, floyd, os가 됩니다. 2번째 글을 쓰고 난 후에, 메모장에 있는 키워드는 set, os가 됩니다. map은 1번째 글과 2번째 글에 중복으로 등장하였음을 www.acmicpc.net 22233, 가희와 키워드 [ 난이도 : 실버 2 ] 이번 문제는 시간복잡도를 잘 고려해주어야 한다. N과 M의 범위가 2 X 10^5 까지이다. ArrayList 의 contains 를 사용한 풀이를 했을 때는 시간 초과가 발생할 수 있다. 그렇기 때문에 HashMap 을 사용한 풀이에 대해 설명해보겠다. # Process Input static int N, M..
(JAVA) [BOJ]백준 22233번, 가희와 키워드https://www.acmicpc.net/problem/22233 22233번: 가희와 키워드 1번째 글을 쓰고 난 후에, 메모장에 있는 키워드는 set, floyd, os가 됩니다. 2번째 글을 쓰고 난 후에, 메모장에 있는 키워드는 set, os가 됩니다. map은 1번째 글과 2번째 글에 중복으로 등장하였음을 www.acmicpc.net 22233, 가희와 키워드 [ 난이도 : 실버 2 ] 이번 문제는 시간복잡도를 잘 고려해주어야 한다. N과 M의 범위가 2 X 10^5 까지이다. ArrayList 의 contains 를 사용한 풀이를 했을 때는 시간 초과가 발생할 수 있다. 그렇기 때문에 HashMap 을 사용한 풀이에 대해 설명해보겠다. # Process Input static int N, M..
2023.06.03 -
https://www.acmicpc.net/problem/21921 21921번: 블로그 첫째 줄에 $X$일 동안 가장 많이 들어온 방문자 수를 출력한다. 만약 최대 방문자 수가 0명이라면 SAD를 출력한다. 만약 최대 방문자 수가 0명이 아닌 경우 둘째 줄에 기간이 몇 개 있는지 출력한다 www.acmicpc.net 21921, 블로그 [ 난이도 : 실버 3 ] 이번 문제는 투포인터 생각났지만 단순 반복문으로 풀이했다. # Process input : 방문자 수 N 과 연속으로 확인 할 일수인 M 을 입력받고 배열을 생성해준다. static int N, M; static int[] arr; static void input() { N = scan.nextInt(); M = scan.nextInt(); a..
(JAVA) [BOJ]백준 21921번, 블로그https://www.acmicpc.net/problem/21921 21921번: 블로그 첫째 줄에 $X$일 동안 가장 많이 들어온 방문자 수를 출력한다. 만약 최대 방문자 수가 0명이라면 SAD를 출력한다. 만약 최대 방문자 수가 0명이 아닌 경우 둘째 줄에 기간이 몇 개 있는지 출력한다 www.acmicpc.net 21921, 블로그 [ 난이도 : 실버 3 ] 이번 문제는 투포인터 생각났지만 단순 반복문으로 풀이했다. # Process input : 방문자 수 N 과 연속으로 확인 할 일수인 M 을 입력받고 배열을 생성해준다. static int N, M; static int[] arr; static void input() { N = scan.nextInt(); M = scan.nextInt(); a..
2023.05.29 -
https://www.acmicpc.net/problem/20920 20920번: 영단어 암기는 괴로워 첫째 줄에는 영어 지문에 나오는 단어의 개수 $N$과 외울 단어의 길이 기준이 되는 $M$이 공백으로 구분되어 주어진다. ($1 \leq N \leq 100\,000$, $1 \leq M \leq 10$) 둘째 줄부터 $N+1$번째 줄까지 외울 단 www.acmicpc.net 20920, 영단어 암기는 어려워 [ 난이도 : 실버 3 ] 이번 문제는 HashMap 과 List 를 사용하여 풀이해보겠다. # Process input : 단어의 수 N과 길이의 기준 M 이주어진다. M보다 길이가 같거나 긴 단어들을 HashMap 에 넣어주겠다. static int N, M; static String str;..
(JAVA) [BOJ]백준 20920번, 영단어 암기는 외로워https://www.acmicpc.net/problem/20920 20920번: 영단어 암기는 괴로워 첫째 줄에는 영어 지문에 나오는 단어의 개수 $N$과 외울 단어의 길이 기준이 되는 $M$이 공백으로 구분되어 주어진다. ($1 \leq N \leq 100\,000$, $1 \leq M \leq 10$) 둘째 줄부터 $N+1$번째 줄까지 외울 단 www.acmicpc.net 20920, 영단어 암기는 어려워 [ 난이도 : 실버 3 ] 이번 문제는 HashMap 과 List 를 사용하여 풀이해보겠다. # Process input : 단어의 수 N과 길이의 기준 M 이주어진다. M보다 길이가 같거나 긴 단어들을 HashMap 에 넣어주겠다. static int N, M; static String str;..
2023.05.29