본문 바로가기

728x90

취업을 준비하며 정리하는 컴퓨터 지식/Problem Solving

(33)
[Problem Solving] 백준 1339번 단어 수학 문제 풀이 백준 1339번 단어 수학 문제풀이에 대해서 알아보겠습니다. 문제 해설은 다음의 링크를 확인하여 주시기 바랍니다. https://www.acmicpc.net/problem/1339 1339번: 단어 수학 첫째 줄에 단어의 개수 N(1 ≤ N ≤ 10)이 주어진다. 둘째 줄부터 N개의 줄에 단어가 한 줄에 하나씩 주어진다. 단어는 알파벳 대문자로만 이루어져있다. 모든 단어에 포함되어 있는 알파벳은 최대 www.acmicpc.net 해당 문제는 그리디 유형의 문제로 최적의 해결 방법에 대해서 고민해야 합니다. 처음 생각한 방법은 높은 자릿수 (백의 자릿수가 십의 자릿수보다 크다는 말)에 위치한 알파벳들에게 높은 숫자를 부여하는 것을 생각했습니다. 하지만 이 경우에 n = 10, data=[ABB, BB, B..
[Problem Solving] SQL 문제 풀이: 테이블 2개 이상 데이터 테이블이 2개 이상인 문제들에 대해서 문제를 풀어보겠습니다. 보호소에서 중성화한 동물 - 문제 해설 코딩테스트 연습 - 보호소에서 중성화한 동물 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr -- 코드를 입력하세요 SELECT A.ANIMAL_ID, A.ANIMAL_TYPE, A.NAME FROM ANIMAL_INS AS A , ANIMAL_OUTS AS B WHERE A.ANIMAL_ID = B.ANIMAL_ID AND A.S..
[Problem Solving] SQL 문제 풀이 (3) SQL 문제 풀이 (2)에 이어서 마지막 문제풀이를 이어나가겠습니다. 고양이와 개는 몇 마리 있을까 문제 설명 코딩테스트 연습 - 고양이와 개는 몇 마리 있을까 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr -- 코드를 입력하세요 SELECT ANIMAL_TYPE, COUNT(ANIMAL_ID) AS count FROM ANIMAL_INS GROUP BY ANIMAL_TYPE ORDER BY ANIMAL_TYPE COUNT를 사용하여 ..
[Problem Solving] SQL 문제 풀이 (2) SQL 문제 풀이 (1)에 이어서 문제 해설을 이어나가겠다. 최솟값 구하기 문제 설명 코딩테스트 연습 - 최솟값 구하기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr -- 코드를 입력하세요 SELECT MIN(DATETIME) AS '시간' FROM ANIMAL_INS MIN 함수를 사용하여 해결할 수 있다. 이름이 없는 동물의 아이디 문제 해설 코딩테스트 연습 - 이름이 없는 동물의 아이디 ANIMAL_INS 테이블은 동물 보호소에 ..
[Problem Solving] SQL 문제 풀이 (1) 모든 문제는 문제 원문 링크를 가지고 있으니 해당 링크를 통해서 사용되는 데이터 테이블의 속성 값과 타입 값을 확인해주기 바랍니다. 모든 레코드 조회하기 문제 설명 코딩테스트 연습 - 모든 레코드 조회하기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr -- 코드를 입력하세요 SELECT * FROM ANIMAL_INS ORDER BY ANIMAL_ID 동물 보호소에 있는 모든 동물의 정보를 ANIMAL_ID순으로 출력하는 문제로 ORD..
[Problem Solving] 백준 2225번 합분해 문제풀이 백준 2225번 문제풀이에 대해서 알아보겠다. 문제 해설은 다음의 링크를 확인하면 된다. 문제 해설 2225번: 합분해 첫째 줄에 답을 1,000,000,000으로 나눈 나머지를 출력한다. www.acmicpc.net 해당 문제는 다이나믹 프로그래밍을 활용하여 해결해야 한다. 처음 문제 접근 과정에서 n = 20일 때를 먼저 생각해봐서 문제 풀이의 어려움이 있었다. 다이나믹 프로그래밍 문제를 해결할 때에는 처음부터 결과를 생각해보는 것이 좋다. 이 문제에서는 n = 1, k = 1일 때가 그 경우이다. 합분해 문제를 풀기 위해서는 다음 규칙에 대해서 알아야 한다. k = 1 일 때는 경우의 수가 1이다. n = 1 일때는 경우의 수가 k개다. k = 1일 때는 경우의 수가 자기 자신으로 표현할 수 있기 ..
[Problem Solving] 백준 2212번 센서 문제풀이 백준 2212번 문제풀이에 대해서 알아보겠다. 문제 해설은 다음 링크를 확인하면 된다. 문제 해설 2212번: 센서 첫째 줄에 센서의 개수 N(1
[ProblemSolving] 백준 1202 보석 도둑 문제풀이 백준 1202 보석 도둑 문제 해설을 알아보겠다. 해설은 다음 링크를 확인하면 된다. 문제 해설 1202번: 보석 도둑 첫째 줄에 N과 K가 주어진다. (1 ≤ N, K ≤ 300,000) 다음 N개 줄에는 각 보석의 정보 Mi와 Vi가 주어진다. (0 ≤ Mi, Vi ≤ 1,000,000) 다음 K개 줄에는 가방에 담을 수 있는 최대 무게 Ci가 주어진다. (1 ≤ Ci www.acmicpc.net 해당 문제는 그리드 유형의 문제로 최적의 해를 찾기 위한 방법을 생각해야 한다. 해당 문제는 모든 경우의 수를 확인하여서 해결할 수도 있지만 최악의 경우에는 30만 X 30만 = 900억 번의 연산을 진행하여한다. 따라서 모든 경우의 수를 확인하지 않고, 버릴 수 있는 조건을 생각해야 한다. 문제 해결 과정..

728x90