목록분류 전체보기 (54)
데이터 엔지니어
문제링크: https://www.acmicpc.net/problem/5446 5446번: 용량 부족 팀포2 덕후 연수는 팀포2를 다운받던 도중 하드 용량이 부족하다는 것을 알았다. 이때는 침착하게 팀포2를 하지 말거나 하드를 새로 사면 되지만 불가능했고, 결국 하드에서 쓸모없는 파일을 지� www.acmicpc.net 문제 설명 - N1: 지워야 할 파일의 개수 - N1개의 파일명이 주어짐 - N2: 지우지 말아야 할 파일의 개수 - N2개의 파일명이 주어짐 rm * 명령어로 전체 삭제도 가능합니다. rm a*이면 a로 시작하는 파일명들을 전부 삭제하는 명령어입니다. 지워야하는 파일만 지우게 할 수 있는 최소의 명령어 개수를 구하는 문제입니다. ex) N1=4 N2=1 N1: BAP, BAPC.in, B..
문제링크: www.acmicpc.net/problem/2579 2579번: 계단 오르기 계단 오르기 게임은 계단 아래 시작점부터 계단 꼭대기에 위치한 도착점까지 가는 게임이다. 과 같이 각각의 계단에는 일정한 점수가 쓰여 있는데 계단을 밟으면 그 계단에 쓰여 있는 점 www.acmicpc.net 문제 설명 - N: 계단의 개수 - N개의 계단의 점수가 주어짐. 조건 1. 계단은 한 번에 한 계단 or 두 계단 오르기 가능 2. 연속된 세계의 계단을 모두 밟아서는 안 된다. 3. 마지막 도착 계단은 반드시 밟아야 함. 아래 그림과 같이 마지막 지점에 도착했을 때 해당 조건을 지키며 갈 수 있는 점수의 최댓값을 구하면 됩니다. 풀이 DP(다이나믹 프로그래밍) 냄새가 물씬 나는 문제였습니다. 마지막 지점을 무..
문제링크: www.acmicpc.net/problem/5052 5052번: 전화번호 목록 첫째 줄에 테스트 케이스의 개수 t가 주어진다. (1 ≤ t ≤ 50) 각 테스트 케이스의 첫째 줄에는 전화번호의 수 n이 주어진다. (1 ≤ n ≤ 10000) 다음 n개의 줄에는 목록에 포함되어 있는 전화번호가 �� www.acmicpc.net 문제 설명 - T: 테스트 케이스 갯수 - N: 전화번호 개수 - N개의 전화번호가 주어짐 각 테스트 케이스에 대해서, 일관성 있는 목록인 경우에는 YES, 아닌 경우에는 NO를 출력하는 문제입니다. 일관성이 있는것은 각 번호가 어떤 번호에도 접두어로 속하지 않는 경우를 뜻합니다. ex) 911, 911234, 1023 => NO - 911이 겹치기 때문입니다. 12340..
문제링크: https://www.acmicpc.net/problem/12100 12100번: 2048 (Easy) 첫째 줄에 보드의 크기 N (1 ≤ N ≤ 20)이 주어진다. 둘째 줄부터 N개의 줄에는 게임판의 초기 상태가 주어진다. 0은 빈 칸을 나타내며, 이외의 값은 모두 블록을 나타낸다. 블록에 쓰여 있는 수는 2 www.acmicpc.net 삼성 기출문제입니다. 문제 설명 - N: 맵의 크기 (최대 20) 2048 게임처럼 숫자를 이동하여 합치는 게임입니다. 다른 점은 게임에서 처럼 랜덤으로 숫자가 추가되지 않습니다. 최대 5번 이동시켜서 얻을 수 있는 가장 큰 블록을 출력하는 문제입니다. ex) 아래 그림8 과 같은 그림을 왼쪽으로 합치면 그림9 처럼 됩니다. 이때의 정답은 8입니다. 풀이 특..
문제링크: https://www.acmicpc.net/problem/11003 11003번: 최솟값 찾기 N개의 수 A1, A2, ..., AN과 L이 주어진다. Di = Ai-L+1 ~ Ai 중의 최솟값이라고 할 때, D에 저장된 수를 출력하는 프로그램을 작성하시오. 이때, i ≤ 0 인 Ai는 무시하고 D를 구해야 한다. www.acmicpc.net 문제 설명 - N: 숫자의 개수 - L: 임의의 수 - Di = Ai-L+1 ~ Ai 중의 최솟값 ex) N=12 L=3 입력 1 5 2 3 6 2 3 7 3 5 2 6 출력 1 1 1 2 2 2 2 2 3 3 2 2 i-L+1
문제링크: www.acmicpc.net/problem/1918 1918번: 후위 표기식 첫째 줄에 중위 표기식이 주어진다. 단 이 수식의 피연산자는 A~Z의 문자로 이루어지며 수식에서 한 번씩만 등장한다. 그리고 -A+B와 같이 -가 가장 앞에 오거나 AB와 같이 *가 생략되는 등의 수식�� www.acmicpc.net 문제 설명 - 중위표현식의 string이 주어짐. - 중위 표현식을 후위 표현식으로 변환 ex) - a+b -> ab+ - a+b*c => (a+(b*c)) => bc*a+ - A+B*C-D/E => ((A+(B*C))-(D/E)) -> ABC*+DE/- 위와 같이 변경해 주는 것입니다. 잘못된 입력은 주어지지 않고 알파벳 대문자와 +, -, *, /, (, ) 로만 이루어진다고 문제에 ..
문제링크: https://www.acmicpc.net/problem/1922 1922번: 네트워크 연결 이 경우에 1-3, 2-3, 3-4, 4-5, 4-6을 연결하면 주어진 output이 나오게 된다. www.acmicpc.net 문제 설명 - N: 컴퓨터의 개수 - M: 연결하는 선의 개수 - (a, b, c) M개 주어짐 (c=비용) 위와 같은 입력이 주어졌을 때, 모든 컴퓨터를 연결할 수 있는 최소 비용을 찾는 문제입니다. 풀이 MST를 찾는 문제입니다. MST는 Minimum Spanning Tree 최소 신장트리를 뜻하며, 모든 정점을 잇는 최소 비용의 트리입니다. MST를 찾기 위해서 크루스칼(kruskal) 알고리즘을 사용합니다. 크루스칼 알고리즘 1. 비용순으로 edge들을 정렬한다. 2..
문제링크: https://www.acmicpc.net/problem/2533 2533번: 사회망 서비스(SNS) 페이스북, 트위터, 카카오톡과 같은 사회망 서비스(SNS)가 널리 사용됨에 따라, 사회망을 통하여 사람들이 어떻게 새로운 아이디어를 받아들이게 되는가를 이해하는 문제가 중요해졌다. 사회망�� www.acmicpc.net 문제 설명 - N: 정점의 개수 - 친구 관계 (u, v) N-1개 주어짐 위와 같은 입력이 주어졌을 때, 모든 노드와 관계를 맺고있는 최소의 노드 개수를 구하는 문제입니다. 여기서는 얼리어답터라고 칭합니다. 얼리어답터 = 관계를 맺는 주체 위와 같은 그림이 주어지면 2, 3, 4가 얼리어답터이고 나머지는 얼리어답터가 아닙니다. 최소의 개수는 3입니다. 1, 5, 6, 7, 8..