# Foundation/백준풀이
[LIS] 백준 14002 :: 가장 긴 증가하는 부분 수열 4
가장 긴 증가하는 부분 수열 4 성공스페셜 저지시간 제한메모리 제한제출정답맞은 사람정답 비율1 초256 MB2601102777541.600%문제수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오.예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이고, 길이는 4이다.입력첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000)이 주어진다.둘째 줄에는 수열 A를 이루고 있는 Ai가 주어진다. (1 ≤ Ai ≤ 1,000)출력첫째 줄에 수열 A의 가장 긴 증가하는 부분 수열의 길이를 출력한다.둘째 줄에는 가장 긴 증가하는 부분 수열을 출력한다.예제 입력 1 복사6 ..
2019. 7. 9. 08:47
# Foundation/백준풀이
[LIS] 백준 12738 :: 가장 긴 증가하는 부분 수열 3
가장 긴 증가하는 부분 수열 3 성공시간 제한메모리 제한제출정답맞은 사람정답 비율3 초512 MB1867108287764.015%문제수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오.예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이고, 길이는 4이다.입력첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다.둘째 줄에는 수열 A를 이루고 있는 Ai가 주어진다. (-1,000,000,000 ≤ Ai ≤ 1,000,000,000)출력첫째 줄에 수열 A의 가장 긴 증가하는 부분 수열의 길이를 출력한다.예제 입력 1 복사6 10 20 10 3..
2019. 7. 9. 08:35
# Foundation/백준풀이
[LIS] 백준 12015 :: 가장 긴 증가하는 부분 수열 2
가장 긴 증가하는 부분 수열 2 성공시간 제한메모리 제한제출정답맞은 사람정답 비율1 초512 MB43131808123245.145%문제수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이고, 길이는 4이다.입력첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 수열 A를 이루고 있는 Ai가 주어진다. (1 ≤ Ai ≤ 1,000,000)출력첫째 줄에 수열 A의 가장 긴 증가하는 부분 수열의 길이를 출력한다.예제 입력 1 복사6 10 20 10 30 20 50 예제 출력 ..
2019. 7. 9. 08:30
# Foundation/백준풀이
[LIS] 백준 11053 :: 가장 긴 증가하는 부분 수열
가장 긴 증가하는 부분 수열 성공시간 제한메모리 제한제출정답맞은 사람정답 비율1 초256 MB3058911338774537.075%문제수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오.예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이고, 길이는 4이다.입력첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000)이 주어진다.둘째 줄에는 수열 A를 이루고 있는 Ai가 주어진다. (1 ≤ Ai ≤ 1,000)출력첫째 줄에 수열 A의 가장 긴 증가하는 부분 수열의 길이를 출력한다.예제 입력 1 복사6 10 20 10 30 20 50 예제 출력 1 복사4 문제 풀..
2019. 7. 9. 08:26
# Foundation/알고리즘
가장 긴 증가하는 부분 수열 (LIS - Longest Increasing Subsequence) 알고리즘
가장 긴 증가하는 부분 수열 (LIS)최장 증가 부분 수열 문제란, 주어진 수열에서 오름차순으로 되어있는 가장 긴 부분수열을 찾는 문제이다. 이 때, 부분수열은 반드시 연속적일 필요는 없으며,필요하다면 중간을 건너뛰는 것도 가능하다. 예를 들어, 수열 A = {10, 20, 60, 50, 30, 40, 20} 에서,가장 긴 증가하는 부분 수열은 A = {10, 20, 60, 50, 30, 40, 20} 이고, 길이는 4 이다. 대표적인 동적 계획법(Dynamic Programming) 문제이며,이 게시글에서 설명할 주제는 다음과 같다.LIS의 특성N^2 문제풀이N*logN 문제풀이경로 역추적 (백트래킹) LIS의 특성어떤 수열에 대해 적절히 n개를 삭제하여 최대한 긴 증가 부분 수열을 만드는 것이므로,이..
2019. 6. 30. 16:25