CS/DataBase2024. 10. 10. 23:54[TIL] RDBMS

개요관계형 데이터베이스 관리 시스템데이터를 테이블(관계) 형태로 관리행(Row)과 열(Column)로 구성테이블 간 관계를 통해 데이터를 조작하고 검색주로 SQL을 사용SQLRDBMS에서 데이터를 관리하기 위한 표준화된 언어로, 주로 데이터 정의(DDL), 데이터 조작(DML), 데이터 제어(DCL), 트랜잭션 관리(TCL) 명령어로 구성됩니다.DDL (Data Definition Language): 데이터베이스와 테이블 구조를 정의하는 언어예시: CREATE, ALTER, DROPDML (Data Manipulation Language): 데이터를 삽입, 수정, 삭제, 조회하는 언어예시: SELECT, INSERT, UPDATE, DELETEDCL (Data Control Language): 데이터베이..

[PS] 백준3020 : 개똥벌레(Java)
CS/알고리즘2024. 10. 10. 16:41[PS] 백준3020 : 개똥벌레(Java)

문제https://www.acmicpc.net/problem/3020 풀이누적합을 활용한 풀이접근법N이 최대 200,000, H가 최대 500,000으로 들어오는 것을 조심해야 한다.단순히 O(NH)로 풀게 될 경우 시간초과가 발생하기 때문에 완전탐색 쪽으로는 생각하지 않았다. 그러면 어떻게 각 구간에 대해 효율적으로 탐색할 수 있을까? 처음에 떠올랐던 건 각 구간 별로 입력을 받을 때마다 갱신하면 되지 않을까였다.N개의 입력에서 갱신하는 방법에 대해 생각한 결과 각 구간 별로 누적합 원리를 활용해서 종유석 | 석순 각각에 대해 카운팅 해준 다음, 누적합을 구하는 방식으로 풀이했다.결과에 대해서는 i구간에 대해 종유석[i] + 석순[i]의 합이 개똥벌레가 부숴야하는 장애물의 개수이며, 최소값을 구한 후 ..

[PS] 백준1339 : 단어 수학(Java)
CS/알고리즘2024. 10. 7. 18:25[PS] 백준1339 : 단어 수학(Java)

문제https://www.acmicpc.net/problem/1339 풀이자료구조를 활용한 그리디 풀이첫번째 접근법 (오답)다음과 같은 우선순위를 통해서 알파벳에 대한 값을 메겼습니다.자리수가 높은 알파벳 우선같은 자리수라면 개수에 따라서반례2ABBB----wrong : 186ans : 188해당 접근으로는 바로 뒷자리수에 나오는 알파벳에 따라 잘못된 결과가 측정될 수 있었습니다. 두번째 접근법그렇다면 위와 같은 반례에 대해서 어떻게 풀이를 해야할까요?처음에는 단순히 바로 뒤에 나오는 각각의 자리수에 대해서 알파벳의 개수를 측정하고, 비교하려 했는데요. 이렇게 될 경우 로직이 굉장히 복잡해지고 어떻게 코드를 작성해야할지 모르겠더라구요.코드를 아예 지우고 다시 생각을 해본 결과 다음과 같은 로직을 생각할 ..

[PS] 백준13305 : 주유소(Java)
CS/알고리즘2024. 10. 5. 22:20[PS] 백준13305 : 주유소(Java)

문제https://www.acmicpc.net/problem/13305 풀이현재 주유소(i)와 다음 주유소(j)의 가격을 비교하여 현재 주유소가 저렴할 경우 다음 거리까지 주유.만약 다음 주유소가 저렴할 경우 현재 주유소에서 다음 주유소까지의 거리만큼만 주유.소스코드import java.io.*;import java.util.StringTokenizer;//BOJ_13305public class Main { static int cityCnt; static int[] dist, store; public static void main(String[] args) throws Exception { BufferedReader br = new BufferedReader(new Input..

image