본문 바로가기

분류 전체보기186

[데이터베이스] 2. 트랜잭션 [1. 트랜잭션] 1. 트랜잭션의 개념 - 업무 처리의 단위 - 하나의 논리적인 작업 단위를 이루는 연산들의 집합 - 데이터베이스의 일관된 상태를 또 다른 일관된 상태로 변환시킴 - 한 번에 수행되어야 할 데이터베이스의 일련의 읽기와 쓰기 연산을 수행하는 단위 - 여러 개의 쿼리를 하나로 묶는 단위 (쿼리=데이터베이스에 접근하는 방법) 2. 커밋과 롤백 - 커밋(Commit) : 하나의 트랜잭션이 성공적으로 처리되었음을 확정하는 명령어 - 롤백(Rollback) : 하나의 트랜잭션으로 처리한 묶음 과정을 취소하는 일 - 커밋과 롤백으로 인해 작업을 그룹화할 수 있으며 데이터의 무결성(integrity)보장 가능 [2. 트랜잭션의 ACID 특징] 1. 원자성(Atomicity) - 한 개의 트랜잭션과 관련.. 2023. 2. 7.
[C/C++] 백준 1439, Greedy 문제 1439번: 뒤집기 (acmicpc.net) 1439번: 뒤집기 다솜이는 0과 1로만 이루어진 문자열 S를 가지고 있다. 다솜이는 이 문자열 S에 있는 모든 숫자를 전부 같게 만들려고 한다. 다솜이가 할 수 있는 행동은 S에서 연속된 하나 이상의 숫자를 잡고 모 www.acmicpc.net 코드 #include #include #include using namespace std; int main() { string S; cin >> S; int zero = 0, one = 0, index = 0; int temp1, temp2; temp1 = stoi(S.substr(index, 1)); if (temp1 == 0) zero++; else one++; while (index < S.length() .. 2023. 2. 6.
[C/C++] 나동빈 곱하기 혹은 더하기, Greedy 문제 각 자리가 0~9로 이루어진 문자열 S가 주어졌을 때, 왼쪽부터 오른쪽으로 하나씩 모든 숫자를 확인하며 숫자 사이에 'x' 혹은 '+' 연산자를 삽입하여 만들 수 있는 가장 큰 수를 도출하라. 단, 덧셈보다 곱셈이 우선시되는 연산의 기본 법칙은 무시하며 왼쪽 연산부터 차례로 계산한다고 가정한다. 예를 들어 02984라는 문자열이 주어지면 가장 큰 수는(((0+2)x9)x8)x4=576이다. 코드 #include #include #include using namespace std; int main() { string S; cin >> S; int temp1, temp2, index = 0; temp1 = stoi(S.substr(index, 1)); while (index < S.length() - .. 2023. 2. 6.
[C/C++] 나동빈 모험가 길드, Greedy 문제 한 마을의 모험가가 N명이고, 각 모험가의 공포도는 X이다. 공포도가 X수준인 모험가는 반드시 X명 이상의 모험가 길드에 참여해야 모험을 떠날 수 있다. 모험을 떠나지 않고 마을에 남아있을 수 있으므로 모든 모험가가 길드에 가입해야 하는 것은 아니다. 공포도는 모험가의 수보다 작거나 같다. 모험을 떠날 수 있는 그룹의 최대 수를 구하라. 예를 들어 5명의 모험가가 있다고 할 때 각각의 공포도가 2 3 1 2 2 라면, 모험을 떠날 수 있는 그룹은 2팀이다. 첫 번째줄에 모험가의 수가 주어지고 두 번째 줄에 공포도가 주어진다. 코드 #include #include #include #include using namespace std; int main() { vector X; int N, x, num =.. 2023. 2. 6.
스터디 1주차 후기 준희가 죽어도 천원은 내고싶지 않았는지 지각을 하지 않았다 데베는 난 해본적이 있긴 한데 그래서 그런지 공부량이 적었던 것 같기도 하고,, sqld 연습문제라도 풀어봐야 하나 고민이다. 실습을 해보고 싶은데 뭐 프로젝트를 해봐야 알지 ㅜ ㅜ 코딩테스트는 코드를 같이 리뷰해봤다 사실 전날 내 코드를 다시 보고 개 그지같이 짜놨길래 전면 수정을 거쳤다. 코드 리뷰 할때도 여러번 수정했다. 난 변수를 많이 쓰는 타입인 것 같다. degenerate case도 과하게 생각하는 느낌이다. 앞으로는 더 가볍게 짜보도록 노력하겠다 그리고 코드 리뷰 후에 전체 공개를 하든가 해야지 시팔 쪽팔려서 어디 내놓기가 그렇다 아흑흑 스터디를 한 번 해보니 예상보다 오래 걸렸다 근데 한 주 동안 공부량이 그렇게 많지는 않아서 코.. 2023. 2. 6.
[C++] STL 1차원 vector 사용법 1. STL vector (1) vector를 사용하기 위해서는 헤더파일을 추가해야 한다. : #include (2) vector의 선언은 다음과 같다 : vector 벡터명; #include #include using namespace std; int main(){ vector V; } 2. 벡터 값 할당 (1) 미리 벡터의 크기를 정한 후 값을 0으로 설정하는 방식 : vector V(크기) (2) 미리 벡터의 크기와 그 값을 설정하는 방식 : vector V(크기, 값) (3) 벡터의 크기만 설정 후 fill을 통해 (4) 벡터의 앞부분부터 값을 직접 입력하는 방식 : 벡터명.push_back(값) #include #include using namespace std; int main() { vect.. 2023. 2. 2.