분류 전체보기
-
TCL(Transaction Control Language) in MySQLComputer Science/Database 2021. 9. 17. 22:28
DBMS에서 사용할 수 있는 SQL Commands는 크게 DDL(Data Definition Launguage): 데이터베이스, 테이블을 제어 DML(Data Manipulation Launguage): 테이블 내 데이터의 검색/등록/삭제/갱신의 연산 제어 DCL(Data Control Launguage): 데이터베이스에 접근할 때의 권한을 제어 TCL(Transaction Control Launguage): 논리적 작업 단위인 트랜잭션에 관한 연산을 제어 로 나뉜다. 대표적인 RDBMS인 MySQL에서의 TCL 연산을 직접 수행해보고 이해해보자 TCL 연산 COMMIT: 트랜잭션 내의 변경 사항을 영속적으로 데이터베이스에 반영한다 ROLLBACK: SAVEPOINT 혹은 마지막 커밋 시점으로 데이터베..
-
[BOJ]백준 23030번: 후다닥을 이겨 츄르를 받자!(C++)/DijkstraProblem Solving/BOJ(백준) 2021. 9. 16. 00:14
https://www.acmicpc.net/problem/23030 23030번: 후다다닥을 이겨 츄르를 받자! 쿠기는 평소 지하철 최단 경로를 탐색하여 소요 시간을 알려주는 '후다다닥' 어플을 사용 중이다. 그러나 쿠기는 걸음이 너무 느려서 '후다다닥'이 알려주는 경로를 따라가면 항상 지하철이 떠 www.acmicpc.net 좌표가 아닌 지하철 (노선, 역)의 정보를 가진 다익스트라 문제 유형 실제 그래프에 더 가까우니까 사실 다익스트라의 취지(?)에 더 적합한 문제 유형 같당 노선의 역 개수를 입력받아 이차원 벡터를 만들어준 뒤 환승역이 있는 곳에는 이어지는 역에 대한 정보를 넣어주었다 역 사이의 거리는 일정하므로 역 번호의 차를 이용했고 다익스트라 풀이를 위해 해당 노선에 존재하는 환승역들에 대해 ..
-
[SWEA] 2383번: 점심 식사시간(C++)/Bitmask, SimulationProblem Solving/SWEA 2021. 9. 14. 09:48
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5-BEE6AK0DFAVl&categoryId=AV5-BEE6AK0DFAVl&categoryType=CODE&problemTitle=%EB%AA%A8%EC%9D%98&orderBy=RECOMMEND_COUNT&selectCodeLang=ALL&select-1=&pageSize=10&pageIndex=2 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 계단의 수가 2개로 제한되어 있어서 비트마스킹을 이용해서 사람*계단에 매칭되는 경우의 수를 구해주었당 계단 입구에서 대기하는..
-
[SWEA] 5650번: 핀볼 게임(C++)/SimulationProblem Solving/SWEA 2021. 9. 14. 00:34
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWXRF8s6ezEDFAUo&categoryId=AWXRF8s6ezEDFAUo&categoryType=CODE&problemTitle=%EB%AA%A8%EC%9D%98&orderBy=RECOMMEND_COUNT&selectCodeLang=ALL&select-1=&pageSize=10&pageIndex=2 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 처음 코드가 계속 시간 초과가 나서 계속 고민했던 문제 장애물 블럭들에 대해서는 바뀔 방향들에 대해 배열을 만들어주고, 벽은..
-
[Programmers]위클리 챌린지 6주차: 복서 정렬하기(Python)/SortingProblem Solving/Programmers 2021. 9. 12. 13:11
https://programmers.co.kr/learn/courses/30/lessons/85002 코딩테스트 연습 - 6주차 복서 선수들의 몸무게 weights와, 복서 선수들의 전적을 나타내는 head2head가 매개변수로 주어집니다. 복서 선수들의 번호를 다음과 같은 순서로 정렬한 후 return 하도록 solution 함수를 완성해주세요 programmers.co.kr 파이썬의 람다를 이용해서 정렬을 간단하게 구현 파이썬의 sort함수는 C++과 다르게 기본적으로 stable sort를 지원한다 def solution(weights, head2head): answer = [] result=[[0, 0, weights[i], i+1] for i in range(len(weights))] for i..
-
[Programmers]다단계 칫솔 판매(Python)/TreeProblem Solving/Programmers 2021. 9. 12. 01:50
https://programmers.co.kr/learn/courses/30/lessons/77486 코딩테스트 연습 - 다단계 칫솔 판매 민호는 다단계 조직을 이용하여 칫솔을 판매하고 있습니다. 판매원이 칫솔을 판매하면 그 이익이 피라미드 조직을 타고 조금씩 분배되는 형태의 판매망입니다. 어느정도 판매가 이루어진 후, programmers.co.kr 새로 가입한 알고리즘 스터디에서 풀었던 문제 문자열을 이용한 저장을 구현할 때 딕셔너리를 사용하는게 많이 편해졌다 이 문제도 풀다풀다 코드가 엄청 길어졌지만 최종적으로는 엄청나게 짧아진 문제 이런 식으로 각 child는 모든 anscestor에게 수익을 분배하게 되는데, 각 노드가 얻게 되는 수익의 총합을 구하는 문제였다 트리를 제대로 이해하고 있으면 풀 ..
-
[Programmers]2019 카카오 개발자 겨울 인턴십: 불량 사용자(Python)/BacktrackingProblem Solving/Programmers 2021. 9. 7. 22:57
https://programmers.co.kr/learn/courses/30/lessons/64064 코딩테스트 연습 - 불량 사용자 개발팀 내에서 이벤트 개발을 담당하고 있는 "무지"는 최근 진행된 카카오이모티콘 이벤트에 비정상적인 방법으로 당첨을 시도한 응모자들을 발견하였습니다. 이런 응모자들을 따로 모아 불량 programmers.co.kr 문자열을 파싱해서 제재 아이디에 해당하는 후보 리스트를 만들고, 조합을 구하는 문제이다 큰 문자열 연산이 필요 없어서 C로 구현해도 되겠다는 생각을 했다 나는 banned_id 배열을 탐색하면서 각각의 id에 매칭되는 user_id의 index를 담은 배열을 만들고, 해당 배열을 백트래킹으로 탐색하면서 중복되지 않는 경우의 수를 구해줬다. user_id 배열의 ..
-
두 개의 Stack으로 Queue 자료구조를 구현해봅시다Data Structure 2021. 9. 7. 21:00
'두 개의 Stack으로 Queue 자료구조를 구현해주세요' 라는 질문 어디서 많이 보지 않았나요? 그래서 직접 해보았습니다 사실 처음의 아이디어는 이것이엇습니다 👇 더보기 Enqueue 연산: 스택을 두 개로 나누어서 Enqueue 시 Stack 1에 Push한다 👉 일반 스택의 Push연산과 동일하므로 Time Complexity: O(1) Dequeue 연산: 1️⃣ Stack 1의 모든 Element들을 Stack 2로 이동한다 (하나씩 Pop하면서, Pop된 Value를 동시에 Stack 2로 Push한다). - O(N) 2️⃣ Stack 2의 top을 Pop한다. - O(1) 3️⃣ Stack 2의 element들을 다시 1번처럼 Stack 1로 되돌린다. - O(N) 👉 Time Comple..