본문 바로가기

분류 전체보기

(433)
ER 다이어그램(ER Diagram) 1. 정의 ER diagram 이란 Entity-Relationship Model을 표현하는 것으로, 현실세계의 요구사항(Requirements)들로 부터 Database를 설계과정에서 활용된다. 즉, 개념을 모델링하는 것으로 개체(entity)와 속성(attribute), 관계성(relationship) 을 표현한다. 일반적으로, Peter Cheng's Notation으로 표현한다(기타 방법은 맨 아래 참고) 1) 개체(Entities) 표현할 정보를 가지고 있는 독립적인 객체 또는 실체 비슷한 속성의 개체 타입을 구성하며 개체 집합으로 묶임 약한 개체(Weak Entity) : 고유적으로 구분될 정보를 가지고 있지 않은 개체. 이러한 Weak Entity는 의존하고 있는 주인 개체(Owner Ent..
프로그래머스_입국심사 문제 : https://programmers.co.kr/learn/courses/30/lessons/43238 코딩테스트 연습 - 입국심사 | 프로그래머스 n명이 입국심사를 위해 줄을 서서 기다리고 있습니다. 각 입국심사대에 있는 심사관마다 심사하는데 걸리는 시간은 다릅니다. 처음에 모든 심사대는 비어있습니다. 한 심사대에서는 동시에 한 명만 심사를 할 수 있습니다. 가장 앞에 서 있는 사람은 비어 있는 심사대로 가서 심사를 받을 수 있습니다. 하지만 더 빨리 끝나는 심사대가 있으면 기다렸다가 그곳으로 가서 심사를 받을 수도 있습니다. 모든 사람이 심사를 받는데 걸리는 시간을 최소로 하고 싶습니다. 입국심사 programmers.co.kr 처음에는 해당 문제가 왜 이분탐색인지 조차도 이해가 가지 않았다...
프로그래머스_섬 연결하기 문제 : https://programmers.co.kr/learn/courses/30/lessons/42861# 코딩테스트 연습 - 섬 연결하기 | 프로그래머스 4 [[0,1,1],[0,2,2],[1,2,5],[1,3,1],[2,3,8]] 4 programmers.co.kr 기본적으로 Kruskal 알고리즘을 통해 해결이 가능하였다. 최소 비용의 간선들만을 가져오면서 연결을 하는데 주의할 점은 Cycle을 만들지 않도록 하는 것이다. Cycle check는 Union Find의 방식을 통해 해결이 가능하였다. (부모까지 올라가서 부모 비교하면서 합치기) 풀이 1. 실제 이차원 vector의 graph를 만들어서 탐색하고 결과값 도출하기 답을 구할 수 있지만, 실질적으로 문제에서 주어지는 costs만을 통..
프로그래머스_NQueen 문제 : https://programmers.co.kr/learn/courses/30/lessons/12952?language=cpp# 코딩테스트 연습 - N-Queen | 프로그래머스 가로, 세로 길이가 n인 정사각형으로된 체스판이 있습니다. 체스판 위의 n개의 퀸이 서로를 공격할 수 없도록 배치하고 싶습니다. 예를 들어서 n이 4인경우 다음과 같이 퀸을 배치하면 n개의 퀸은 서로를 한번에 공격 할 수 없습니다. 체스판의 가로 세로의 세로의 길이 n이 매개변수로 주어질 때, n개의 퀸이 조건에 만족 하도록 배치할 수 있는 방법의 수를 return하는 solution함수를 완성해주세요. 제한사항 퀸(Queen)은 가로, 세로, 대각선으로 programmers.co.kr 풀이 1. 순열을 사용하기 처음 순..
프로그래머스_예산 문제 :https://programmers.co.kr/learn/courses/30/lessons/43237# 코딩테스트 연습 - 예산 | 프로그래머스 국가의 역할 중 하나는 여러 지방의 예산요청을 심사하여 국가의 예산을 분배하는 것입니다. 국가예산의 총액은 미리 정해져 있어서 모든 예산요청을 배정해 주기는 어려울 수도 있습니다. 그래서 정해진 총액 이하에서 가능한 한 최대의 총 예산을 다음과 같은 방법으로 배정합니다. 1. 모든 요청이 배정될 수 있는 경우에는 요청한 금액을 그대로 배정합니다. 2. 모든 요청이 배정될 수 없는 경우에는 특정한 정수 상한액을 계산하여 그 이상인 예산요청에는 모두 상한액을 programmers.co.kr 먼저, 해당 풀이는 90점 짜리 풀이이다. 예제 케이스는 전부 통과하..
프로그래머스_네트워크 문제 : https://programmers.co.kr/learn/courses/30/lessons/43162 코딩테스트 연습 - 네트워크 | 프로그래머스 네트워크란 컴퓨터 상호 간에 정보를 교환할 수 있도록 연결된 형태를 의미합니다. 예를 들어, 컴퓨터 A와 컴퓨터 B가 직접적으로 연결되어있고, 컴퓨터 B와 컴퓨터 C가 직접적으로 연결되어 있을 때 컴퓨터 A와 컴퓨터 C도 간접적으로 연결되어 정보를 교환할 수 있습니다. 따라서 컴퓨터 A, B, C는 모두 같은 네트워크 상에 있다고 할 수 있습니다. 컴퓨터의 개수 n, 연결에 대한 정보가 담긴 2차원 배열 computers가 매개변수로 주어질 때, 네트워크 programmers.co.kr 단순히 DFS를 통해서 몇번의 DFS를 하는지를 측정하면 된다. ..
백준 9019_DSLR 문제 : https://www.acmicpc.net/problem/9019 9019번: DSLR 문제 네 개의 명령어 D, S, L, R 을 이용하는 간단한 계산기가 있다. 이 계산기에는 레지스터가 하나 있는데, 이 레지스터에는 0 이상 10,000 미만의 십진수를 저장할 수 있다. 각 명령어는 이 레지스터에 저장된 n을 다음과 같이 변환한다. n의 네 자릿수를 d1, d2, d3, d4라고 하자(즉 n = ((d1 × 10 + d2) × 10 + d3) × 10 + d4라고 하자) D: D 는 n을 두 배로 바꾼다. 결과 값이 9999 보다 큰 경 www.acmicpc.net D: N -> 2*N, S: N -> N-1, L: Shift Left, R: Shift Right 으로 주어졌을 때, 위 4 ..
백준 13913_숨바꼭질 4 문제 : https://www.acmicpc.net/problem/13913 13913번: 숨바꼭질 4 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 때 걷는다면 1초 후에 X-1 또는 X+1로 이동하게 된다. 순간이동을 하는 경우에는 1초 후에 2*X의 위치로 이동하게 된다. 수빈이와 동생의 위치가 주어졌을 때, 수빈이가 동생을 찾을 수 있는 가장 빠른 시간이 몇 초 후인지 구하는 www.acmicpc.net 해당 문제를 BFS로 바로 접근해서 풀어야한다. 먼저, +1 -1 *2 세 가지 움직임 모두 가중치가 1이고 정점과 간선..