본문 바로가기

# Foundation/백준풀이

(43)
# 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/백준풀이 [이분탐색] 백준 10816 :: 숫자 카드 2 숫자 카드 2 성공시간 제한메모리 제한제출정답맞은 사람정답 비율1 초256 MB98942933201733.723%문제숫자 카드는 정수 하나가 적혀져 있는 카드이다. 상근이는 숫자 카드 N개를 가지고 있다. 정수 M개가 주어졌을 때, 이 수가 적혀있는 숫자 카드를 상근이가 몇 개 가지고 있는지 구하는 프로그램을 작성하시오.입력첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이가 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10,000,000보다 작거나 같다.셋째 줄에는 M(1 ≤ M ≤ 500,000)이 주어진다. 넷째 줄에는 상근이가 몇 개 가지고 있는 숫자 카드인지 구해야 할 M개의 정..

2019. 6. 25. 17:47

# Foundation/백준풀이 [이분탐색] 백준 1654 :: 랜선 자르기 랜선 자르기 성공시간 제한메모리 제한제출정답맞은 사람정답 비율2 초128 MB283735211337318.668%문제집에서 시간을 보내던 오영식은 박성원의 부름을 받고 급히 달려왔다. 박성원이 캠프 때 쓸 N개의 랜선을 만들어야 하는데 너무 바빠서 영식이에게 도움을 청했다. 이미 오영식은 자체적으로 K개의 랜선을 가지고 있다. 그러나 K개의 랜선은 길이가 제각각이다. 박성원은 랜선을 모두 N개의 같은 길이의 랜선으로 만들고 싶었기 때문에 K개의 랜선을 잘라서 만들어야 한다. 예를 들어 300cm 짜리 랜선에서 140cm 짜리 랜선을 두 개 잘라내면 20cm 은 버려야 한다.(이미 자른 랜선은 붙일 수 없다.) 편의를 위해 랜선을 자르거나 만들 때 손실되는 길이는 없다고 가정하며, 기존의 K개의 랜선으로 ..

2019. 6. 25. 17:13

# Foundation/백준풀이 [동적계획법] 백준 1003 :: 피보나치 함수 피보나치 함수 성공시간 제한메모리 제한제출정답맞은 사람정답 비율0.25 초 (언어별 추가 시간 없음)128 MB66959146351165829.096%문제다음 소스는 N번째 피보나치 수를 구하는 C++ 함수이다.1234567891011int fibonacci(int n) { if (n == 0) { printf("0"); return 0; } else if (n == 1) { printf("1"); return 1; } else { return fibonacci(n‐1) + fibonacci(n‐2); }}fibonacci(3)을 호출하면 다음과 같은 일이 일어난다.fibonacci(3)은 fibonacci(2)와 fibonacci(1) (첫 번째 호출)을 호출한다.fibonacci(2)는 fibonac..

2019. 6. 24. 02:46

# Foundation/백준풀이 [동적계획법] 백준 1463 :: 1로 만들기 1로 만들기 성공시간 제한메모리 제한제출정답맞은 사람정답 비율2 초128 MB74952244731562832.094%문제정수 X에 사용할 수 있는 연산은 다음과 같이 세 가지 이다.X가 3으로 나누어 떨어지면, 3으로 나눈다.X가 2로 나누어 떨어지면, 2로 나눈다.1을 뺀다.정수 N이 주어졌을 때, 위와 같은 연산 세 개를 적절히 사용해서 1을 만들려고 한다. 연산을 사용하는 횟수의 최솟값을 출력하시오.입력첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다.출력첫째 줄에 연산을 하는 횟수의 최솟값을 출력한다.예제 입력 1 복사2 예제 출력 1 복사1 예제 입력 2 복사10 예제 출력 2 복사3 힌트10의 경우에 10 -> 9 -> 3 -> 1 로 3번 만에 만들 수 있다. 문제 ..

2019. 6. 24. 01:25