구현
-
백준 11053번: 가장 긴 증가하는 부분 수열다이나믹프로그래밍(DP) 2020. 11. 26. 18:30
https://www.acmicpc.net/problem/11053 11053번: 가장 긴 증가하는 부분 수열 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이고, 길이는 4이다. www.acmicpc.net 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이고, 길이는 4이다. 히스토리 2020-03-22 ..
-
백준 1547번: 공시뮬레이션(Simulation) 2020. 2. 6. 16:55
https://www.acmicpc.net/problem/1547 1547번: 공 첫째 줄에 컵의 위치를 바꾼 횟수 M이 주어지며, M은 50보다 작거나 같은 자연수이다. 둘째 줄부터 M개의 줄에는 컵의 위치를 바꾼 방법 X와 Y가 주어지며, X번 컵과 Y번 컵의 위치를 서로 바꾸는 것을 의미한다. 컵을 이동시키는 중에 공이 컵에서 빠져나오는 경우는 없다. X와 Y의 값은 3보다 작거나 같고, X와 Y가 같을 수도 있다. www.acmicpc.net swap 을 사용하여 현재 공이 있는 위치를 찾는 문제 키워드 - 구현, 시뮬레이션 Source #include #include #include #include #include #include #include #include #include #include ..
-
백준 1335번: 트럭큐(Queue) 2020. 2. 6. 16:53
https://www.acmicpc.net/problem/13335 13335번: 트럭 문제 강을 가로지르는 하나의 차선으로 된 다리가 하나 있다. 이 다리를 n 개의 트럭이 건너가려고 한다. 트럭의 순서는 바꿀 수 없으며, 트럭의 무게는 서로 같지 않을 수 있다. 다리 위에는 단지 w 대의 트럭만 동시에 올라갈 수 있다. 다리의 길이는 w 단위길이(unit distance)이며, 각 트럭들은 하나의 단위시간(unit time)에 하나의 단위길이만큼만 이동할 수 있다고 가정한다. 동시에 다리 위에 올라가 있는 트럭들의 무게의 합은 다리의 최 www.acmicpc.net 큐를 이용하면 쉽게 풀리는 문제 L -> 다리가 견딜수 있는 무게 W -> 다리의 길이 키워드 - queue Source #include..
-
완전탐색 > 모의고사프로그래머스(Programmers) 2020. 2. 6. 16:30
https://programmers.co.kr/learn/courses/30/lessons/42840 코딩테스트 연습 - 모의고사 | 프로그래머스 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 방식: 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, ... 2번 수포자가 찍는 방식: 2, 1, 2, 3, 2, 4, 2, 5, 2, 1, 2, 3, 2, 4, 2, 5, ... 3번 수포자가 찍는 방식: 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, 3, programmers.co.kr 키워드 - 구현, 완전탐색 Source #include #include #..
-
완전탐색 > 소수 찾기프로그래머스(Programmers) 2020. 2. 5. 15:21
https://programmers.co.kr/learn/courses/30/lessons/42839 코딩테스트 연습 - 소수 찾기 | 프로그래머스 한자리 숫자가 적힌 종이 조각이 흩어져있습니다. 흩어진 종이 조각을 붙여 소수를 몇 개 만들 수 있는지 알아내려 합니다. 각 종이 조각에 적힌 숫자가 적힌 문자열 numbers가 주어졌을 때, 종이 조각으로 만들 수 있는 소수가 몇 개인지 return 하도록 solution 함수를 완성해주세요. 제한사항 numbers는 길이 1 이상 7 이하인 문자열입니다. numbers는 0~9까지 숫자만으로 이루어져 있습니다. 013은 0, 1, 3 숫자가 적힌 종이 programmers.co.kr 에라토스테네스의 체를 사용하던지 속도가 느리다면 메모제이션이나 DP를 사..
-
Codeforces Round #524 (Div. 2) - A. Petya and Origami코드포스(CodeForce) 2020. 1. 20. 14:55
http://codeforces.com/contest/1080/problem/A Problem - A - Codeforces codeforces.com 1. 문제 페티아는 그녀의 저녁 파티에 n 명을 초대 하려고 한다. 초대장은 2개의 빨간 종이, 5개의 초록 종이, 8개의 파란색 종이가 필요하다. 페티아는 초대장을 만들기 위해서 상점에 갔다. 상점에서는 오직 하나의 색상의 색종이를 k개의 묶음으로 판매 한다. n 명에 초대장을 만들기 위해 페티아가 구매할 색종이의 최소 개수를 구하여라. 2. 알고리즘 키워드 - 구현 3. 코드 #include #include #include #include #include #include #include #include #include #include #include ..
-
Left Rotation해커랭크(HackerRank) 2019. 3. 12. 08:36
1. 문제 2. 알고리즘 키워드 - 구현 * 문제 풀이 입력 으로 들어오는 배열에 요소를 왼쪽으로 d 만큼 ROTATION 하는 문제이며 d 입력 값에 따라 반복적으로 연산량이 증가 된다. 초기 접근은 d 만큼 반복문 내에서 swap 하도록 구현 하였으나 timeout 이 발생하여 다른 방법으로 접근 하기로 했음 문제에 주어진 조건에서 d 는 배열의 크기보다 작은 수로 입력 됨으로 아래와 같은 식을 세울 수 있다. 이동 될 위치 = ( 배열의 크기 - d + 현재 배열의 위치) % 배열의 크기 문제에서 주어진 예제 기준으로 대입 해 본다면 이동 될 위치는 아래 와 같다. index 0 일 때 = (5 - 4 + 0) % 5 이동 될 위치는 1 index 1 일 때 = (5 - 4 + 1) % 5 이동 될..
-
백준 1937번: 욕심쟁이 판다깊이우선탐색(DFS) 2019. 1. 20. 18:38
https://www.acmicpc.net/problem/1937 1937번: 욕심쟁이 판다 n*n의 크기의 대나무 숲이 있다. 욕심쟁이 판다는 어떤 지역에서 대나무를 먹기 시작한다. 그리고 그 곳의 대나무를 다 먹어 치우면 상, 하, 좌, 우 중 한 곳으로 이동을 한다. 그리고 또 그곳에서 대나무를 먹는다. 그런데 단 조건이 있다. 이 판다는 매우 욕심이 많아서 대나무를 먹고 자리를 옮기면 그 옮긴 지역에 그 전 지역보다 대나무가 많이 있어야 한다. 만약에 그런 지점이 없으면 이 판다는 불만을 가지고 단식 투쟁을 하다가 죽게 된다(-_-) 이 www.acmicpc.net 키워드 - DFS, 구현 Source #include #include #include #include #include #include..