분류 전체보기
-
#1019 책 페이지Code/BOJ 2019. 12. 31. 22:46
n이 34라고 하자. 그렇다면 10쪽부터 29쪽까지는 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 1의 자리에서 0부터 9까지 2번 즉 29의 2와 10의 1을 빼준 2-1+1 개씩 나오게 된다. 즉 1부터 9까지 각 숫자의 갯수의 합, 34,33,32,...,29까지 숫자의 갯수의 합을 구해주고 나머지는 위의 방식대로 적용하면된다. 자릿수를 높여서 생각해보자 n=341이다. 먼저 마찬가지로 1부터 9까지 각 숫자의 갯수의 합, 341,340까지는 cal함수를 통해 수동으로 계산을 한다. 10쪽부터 339쪽까지는 조금 수의 모양을 바꿔 010쪽부터(맨 앞에 붙여준 0은 그냥 자릿수만 맞춰주는 0이며 아무 의미 없다.) 339쪽까지 1의자리에서..
-
#1713 후보 추천하기Code/BOJ 2019. 12. 31. 22:28
출처: https://www.acmicpc.net/problem/1713 1713번: 후보 추천하기 첫째 줄에는 사진틀의 개수 N이 주어진다. (1≤N≤20) 둘째 줄에는 전체 학생의 총 추천 횟수가 주어지고, 셋째 줄에는 추천받은 학생을 나타내는 번호가 빈 칸을 사이에 두고 추천받은 순서대로 주어진다. 총 추천 횟수는 1,000번 이하이며 학생을 나타내는 번호는 1부터 100까지의 자연수이다. www.acmicpc.net 문제에서 친절하게 알고리즘 설계도를 줬다. 해당 상세 구현 설명을 기준으로 문제를 조금 재해석해서 내 맞춤으로 다시한번 수정해 보았다. 먼저 문제는 학생의 사진을 게시할 수 있는 정해진 사진틀이 있고 추천할때마다 항상 추천한 그 학생의 사진은 사진틀에 걸려야 한다. 이 과정에서 문제와..
-
#2933 미네랄Code/BOJ 2019. 12. 31. 22:05
출처: https://www.acmicpc.net/problem/2933 2933번: 미네랄 문제 창영과 상근은 한 동굴을 놓고 소유권을 주장하고 있다. 두 사람은 막대기를 서로에게 던지는 방법을 이용해 누구의 소유인지를 결정하기로 했다. 싸움은 동굴에서 벌어진다. 동굴에는 미네랄이 저장되어 있으며, 던진 막대기가 미네랄을 파괴할 수도 있다. 동굴은 R행 C열로 나타낼 수 있으며, R×C칸으로 이루어져 있다. 각 칸은 비어있거나 미네랄을 포함하고 있으며, 네 방향 중 하나로 인접한 미네랄이 포함된 두 칸은 같은 클러스터이다. 창영은 동굴의 왼쪽에 www.acmicpc.net 문제에서 요구하는 사항을 구현하는 단순 구현 문제이다. 하지만 구현이 요소에 1.미네랄 깨기, 2. 그룹생성하기, 3.떠 있는 그룹..
-
2. 관계 데이터 모델전공공부/데이터베이스 2019. 12. 31. 18:30
목차 1. 관계 데이터 모델의 개념 2. 무결성 제약조건 3. 관계대수 01. 관계 데이터 모델의 개념 1. 릴레이션 2. 릴레이션 스키마와 인스턴스 3. 릴레이션의 특징 1.1 릴레이션 릴레이션: 행과 열로 구성된 테이블 첫 번째 행 (1, 축구의 역사, 굿스포츠, 7000)의 경우 네 개의 집합에서 각각 원소 한 개씩 선택하여 만들어진것으로 이 원소들이 관계를 맺고 있다. 관계(relationship) 릴레이션 내에서 생성되는 관계: 릴레이션 내 데이터들의 관계 릴레이션 간에 생성되는 관계: 릴레이션 간의 관계 1.2 릴레이션 스키마와 인스턴스 스키마의 요소 속성(attribute): 릴레이션 스키마의 열 도메인(domain): 각각의 속성들이 가질 수 있는 값들의 집합 (예를들면 속성이 길이면 속성..
-
#2213 트리의 독립집합Code/BOJ 2019. 12. 30. 09:40
출처: https://www.acmicpc.net/problem/2213 2213번: 트리의 독립집합 첫째 줄에 트리의 정점의 수 n이 주어진다. n은 10,000이하인 양의 정수이다. 1부터 n사이의 정수가 트리의 정점이라고 가정한다. 둘째 줄에는 n개의 정수 w1, w2, ..., wn이 주어지는데, wi는 정점 i의 가중치이다(1 ≤ i ≤ n). 셋째 줄부터 마지막 줄까지는 에지 리스트가 주어지는데, 한 줄에 하나의 에지를 나타낸다. 에지는 정점의 쌍으로 주어진다. 입력되는 정수들 사이에는 콤마가 없고 대신 빈칸이 하나 혹은 그 이상 있다. 가중치 www.acmicpc.net 트리의 독립집합을 구하는 문제인데 연결 돼 있는 정점 또는 노드들을 연속으로 선택하지 않으면 되는 문제이다. 재귀를 활용한..
-
#1102 발전소Code/BOJ 2019. 12. 30. 09:09
출처: https://www.acmicpc.net/problem/1102 1102번: 발전소 은진이는 발전소에서 근무한다. 은진이가 회사에서 잠깐 잘 때마다, 몇몇 발전소가 고장이난다. 게다가, 지금 은진이의 보스 형택이가 은진이의 사무실로 걸어오고 있다. 만약 은진이가 형택이가 들어오기 전까지 발전소를 고쳐놓지 못한다면, 은진이는 해고당할 것이다. 발전소를 고치는 방법은 간단하다. 고장나지 않은 발전소를 이용해서 고장난 발전소를 재시작하면 된다. 하지만, 이때 비용이 발생한다. 이 비용은 어떤 발전소에서 어떤 발전소를 재시작하느냐에 따라 다르다 www.acmicpc.net 비트마스킹와 메모이제이션을 활용한 문제 켜져있는 발전소들을 기준으로 계속해서 꺼져있는 발전소을 가동시켜야 하는 문제이며 꺼져있던 발..
-
재귀를 적용한 동적계획법 문제를 풀기 전에 필독!공지사항 2019. 12. 29. 21:24
재귀.. 너무 헷갈리고 어렵다. 그래서 재귀가 더이상 어렵지 느껴지지 않도록 정리를 한 번 해보았다. 재귀함수를 쓰면서 dp를 적용하는 것이 왜 효율적인지 분석해보았으며 재귀를 적용한 dp를 어떤식으로 구현하면 좋을지 고민해 보았다. 먼저 기본적인 예시를 들어 난이도를 올려가며 문제 풀이를 하였다. 일반적인 재귀함수. 재귀함수는 이 두가지가 중요하다. 1. 재귀를 적용시킬 점화식 세우기. 2. 종료조건 재귀 함수에는 여러가지가 있지만 대표적으로 피보나치 함수를 재귀 함수로 구현할 수 있다. 피보나치 함수의 점화식은 다음과 같다. F(n)=F(n-1)+F(n-2) 따라서 F(n-1)+F(n-2)을 재귀함수를 통해 반복을 하면 되고 종료조건은 n=1 또는 n=2일때 1를 리턴시켜 종료시켜주면 된다. 소스코드..
-
1. 데이터 베이스 개요전공공부/데이터베이스 2019. 12. 29. 17:32
목차 1. 데이터베이스와 데이터베이스 시스템 2. 데이터베이스 시스템의 발전 3. 파일 시스템과 DBMS 4. 데이터베이스 시스템의 구성 01. 데이터베이스와 데이터베이스 시스템 1. 데이터, 정보, 지식 데이터: 관찰의 결과로 나타난 정량적 혹은 정성적인 실제 값 정보: 데이터를 가공한 것 지식: 정보들을 통해 이끌어낸 사물이나 현상에 대한 이해 2. 일상생활의 데이터베이스 데이터베이스란? 조직에 필요한 정보를 얻기 위해 논리적으로 연관된 데이터를 모아 구조적으로 통합해 놓은 것. 데이터 베이스의 활용 분야 종류 특징 생활과 문화 •기상정보 : 날씨 정보를 제공 •교통정보 : 교통상황 정보를 제공 •문화예술정보 : 공연이나 인물에 관한 정보를 제공 비즈니스 •금융정보 : 금융, 증권, 신용에 관한 정보..