DP
-
문제집: https://www.acmicpc.net/workbook/by/BaaaaaaaaaaarkingDog 문제: https://www.acmicpc.net/problem/2193 문제0과 1로만 이루어진 수를 이진수라 한다. 이러한 이진수 중 특별한 성질을 갖는 것들이 있는데, 이들을 이친수(pinary number)라 한다. 이친수는 다음의 성질을 만족한다.이친수는 0으로 시작하지 않는다.이친수에서는 1이 두 번 연속으로 나타나지 않는다. 즉, 11을 부분 문자열로 갖지 않는다.예를 들면 1, 10, 100, 101, 1000, 1001 등이 이친수가 된다. 하지만 0010101이나 101101은 각각 1, 2번 규칙에 위배되므로 이친수가 아니다.N(1 ≤ N ≤ 90)이 주어졌을 때, N자리 이..
[백준][파이썬][DP] 2193번: 이친수문제집: https://www.acmicpc.net/workbook/by/BaaaaaaaaaaarkingDog 문제: https://www.acmicpc.net/problem/2193 문제0과 1로만 이루어진 수를 이진수라 한다. 이러한 이진수 중 특별한 성질을 갖는 것들이 있는데, 이들을 이친수(pinary number)라 한다. 이친수는 다음의 성질을 만족한다.이친수는 0으로 시작하지 않는다.이친수에서는 1이 두 번 연속으로 나타나지 않는다. 즉, 11을 부분 문자열로 갖지 않는다.예를 들면 1, 10, 100, 101, 1000, 1001 등이 이친수가 된다. 하지만 0010101이나 101101은 각각 1, 2번 규칙에 위배되므로 이친수가 아니다.N(1 ≤ N ≤ 90)이 주어졌을 때, N자리 이..
2024.09.23 -
문제집: https://www.acmicpc.net/workbook/by/BaaaaaaaaaaarkingDog 문제: https://www.acmicpc.net/problem/9251 LCS 문제 모음 : https://www.acmicpc.net/workbook/view/5080LCS (최장 공통 부분 수열, Longest Common Subsequence)정의: LCS는 두 개의 문자열에서 순서를 유지하며 공통적으로 나타나는 가장 긴 부분 수열을 찾는 문제입니다.목표: 두 문자열에서 순서대로 등장하는 공통 부분 수열 중 가장 긴 것을 찾는 것. 예시두 문자열 ABCBDAB와 BDCAB에서 LCS는 BCAB이며, 길이는 4입니다.순서가 유지되어야 하는구나 ABCBDAB BDCAB LCS의 동작 방식..
[백준][파이썬][DP][LCS] 9251번: LCS문제집: https://www.acmicpc.net/workbook/by/BaaaaaaaaaaarkingDog 문제: https://www.acmicpc.net/problem/9251 LCS 문제 모음 : https://www.acmicpc.net/workbook/view/5080LCS (최장 공통 부분 수열, Longest Common Subsequence)정의: LCS는 두 개의 문자열에서 순서를 유지하며 공통적으로 나타나는 가장 긴 부분 수열을 찾는 문제입니다.목표: 두 문자열에서 순서대로 등장하는 공통 부분 수열 중 가장 긴 것을 찾는 것. 예시두 문자열 ABCBDAB와 BDCAB에서 LCS는 BCAB이며, 길이는 4입니다.순서가 유지되어야 하는구나 ABCBDAB BDCAB LCS의 동작 방식..
2024.09.20 -
관련 문제들 https://www.acmicpc.net/problem/5502 문제팰린드롬이란 대칭 문자열이다. 즉, 왼쪽에서 오른쪽으로 읽었을때와 오른쪽에서 왼쪽으로 읽었을때 같다는 얘기다. 당신은 문자열이 주어졌을때, 최소 개수의 문자를 삽입하여 팰린드롬이 되게 되는 문자의 개수를 구하는 프로그램을 작성하여라.예제에서는, 2개의 문자를 삽입하여 팰린드롬이 된다. "Ab3bd"는 "dAb3bAd" 혹은 "Adb3bdA" 로 바뀔 수 있다. 하지만, 2개 미만의 문자를 삽입해서는 팰린드롬이 될 수 없다.입력첫 번째 줄에는 문자열의 길이 N (3 ≤ N ≤ 5000)이 주어진다. 두 번째 줄에는 길이가 N인 문자열이 주어진다. 문자열은 대문자 'A'-'Z'와 소문자 'a'-'z', 숫자 '0'-'9'로 ..
[백준][파이썬][팰린드롬][LCS] 5502번: 팰린드롬관련 문제들 https://www.acmicpc.net/problem/5502 문제팰린드롬이란 대칭 문자열이다. 즉, 왼쪽에서 오른쪽으로 읽었을때와 오른쪽에서 왼쪽으로 읽었을때 같다는 얘기다. 당신은 문자열이 주어졌을때, 최소 개수의 문자를 삽입하여 팰린드롬이 되게 되는 문자의 개수를 구하는 프로그램을 작성하여라.예제에서는, 2개의 문자를 삽입하여 팰린드롬이 된다. "Ab3bd"는 "dAb3bAd" 혹은 "Adb3bdA" 로 바뀔 수 있다. 하지만, 2개 미만의 문자를 삽입해서는 팰린드롬이 될 수 없다.입력첫 번째 줄에는 문자열의 길이 N (3 ≤ N ≤ 5000)이 주어진다. 두 번째 줄에는 길이가 N인 문자열이 주어진다. 문자열은 대문자 'A'-'Z'와 소문자 'a'-'z', 숫자 '0'-'9'로 ..
2024.09.20 -
관련 문제들 문제:https://www.acmicpc.net/problem/2079 이 정도 난이도는 똑같은 문제가 나와도 못풀겠다. 더 공부하지 말고 이 정도 난이도는 그냥 넘어가자 문제팰린드롬(palindrome)이란 앞에서부터 읽으나 뒤에서부터 읽으나 같은 단어를 말한다. 'aba'나 'a'와 같은 단어는 팰린드롬이며, 'abaccbcb'나 'anavolimilana'와 같은 단어는 팰린드롬이 아니다.만일 어떤 단어가 팰린드롬이 아니라면, 그 단어는 여러 개의 팰린드롬으로 나누어질 수 있을 것이다. 단어가 주어졌을 때 이를 여러 개의 팰린드롬으로 나누되, 나누어진 팰린드롬의 개수가 최소가 되도록 나누려고 한다.예를 들어 abaccbcb라는 문자는 aba, cc, bcb와 같이 세 개의 문자열로 나누..
[백준][파이썬][팰린드] 2079번: 팰린드롬관련 문제들 문제:https://www.acmicpc.net/problem/2079 이 정도 난이도는 똑같은 문제가 나와도 못풀겠다. 더 공부하지 말고 이 정도 난이도는 그냥 넘어가자 문제팰린드롬(palindrome)이란 앞에서부터 읽으나 뒤에서부터 읽으나 같은 단어를 말한다. 'aba'나 'a'와 같은 단어는 팰린드롬이며, 'abaccbcb'나 'anavolimilana'와 같은 단어는 팰린드롬이 아니다.만일 어떤 단어가 팰린드롬이 아니라면, 그 단어는 여러 개의 팰린드롬으로 나누어질 수 있을 것이다. 단어가 주어졌을 때 이를 여러 개의 팰린드롬으로 나누되, 나누어진 팰린드롬의 개수가 최소가 되도록 나누려고 한다.예를 들어 abaccbcb라는 문자는 aba, cc, bcb와 같이 세 개의 문자열로 나누..
2024.09.20 -
문제집: https://www.acmicpc.net/workbook/by/BaaaaaaaaaaarkingDog https://www.acmicpc.net/problem/1932 문제 7 3 8 8 1 0 2 7 4 44 5 2 6 5위 그림은 크기가 5인 정수 삼각형의 한 모습이다.맨 위층 7부터 시작해서 아래에 있는 수 중 하나를 선택하여 아래층으로 내려올 때, 이제까지 선택된 수의 합이 최대가 되는 경로를 구하는 프로그램을 작성하라. 아래층에 있는 수는 현재 층에서 선택된 수의 대각선 왼쪽 또는 대각선 오른쪽에 있는 것 중에서만 선택할 수 있다.삼각형의 크기는 1 이상 500 이하이다. 삼각형을 이루고 있는 각 수는 모두 정수이며, ..
[백준][파이썬][DP] 1932번: 정수 삼각형문제집: https://www.acmicpc.net/workbook/by/BaaaaaaaaaaarkingDog https://www.acmicpc.net/problem/1932 문제 7 3 8 8 1 0 2 7 4 44 5 2 6 5위 그림은 크기가 5인 정수 삼각형의 한 모습이다.맨 위층 7부터 시작해서 아래에 있는 수 중 하나를 선택하여 아래층으로 내려올 때, 이제까지 선택된 수의 합이 최대가 되는 경로를 구하는 프로그램을 작성하라. 아래층에 있는 수는 현재 층에서 선택된 수의 대각선 왼쪽 또는 대각선 오른쪽에 있는 것 중에서만 선택할 수 있다.삼각형의 크기는 1 이상 500 이하이다. 삼각형을 이루고 있는 각 수는 모두 정수이며, ..
2024.09.20 -
문제집 추천, 이 문제집에 나온 유형들만 공부해도 코딩테스트는 거뜬: https://www.acmicpc.net/workbook/by/BaaaaaaaaaaarkingDog https://www.acmicpc.net/problem/12852 유사한 문제, 이전 버전 문제: https://hyundoil.tistory.com/78 문제정수 X에 사용할 수 있는 연산은 다음과 같이 세 가지 이다.X가 3으로 나누어 떨어지면, 3으로 나눈다.X가 2로 나누어 떨어지면, 2로 나눈다.1을 뺀다.정수 N이 주어졌을 때, 위와 같은 연산 세 개를 적절히 사용해서 1을 만들려고 한다. 연산을 사용하는 횟수의 최솟값을 출력하시오.입력첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 자연수 N이 주어진다.출력첫째 ..
[백준][파이썬][DP] 12852번: 1로 만들기 2문제집 추천, 이 문제집에 나온 유형들만 공부해도 코딩테스트는 거뜬: https://www.acmicpc.net/workbook/by/BaaaaaaaaaaarkingDog https://www.acmicpc.net/problem/12852 유사한 문제, 이전 버전 문제: https://hyundoil.tistory.com/78 문제정수 X에 사용할 수 있는 연산은 다음과 같이 세 가지 이다.X가 3으로 나누어 떨어지면, 3으로 나눈다.X가 2로 나누어 떨어지면, 2로 나눈다.1을 뺀다.정수 N이 주어졌을 때, 위와 같은 연산 세 개를 적절히 사용해서 1을 만들려고 한다. 연산을 사용하는 횟수의 최솟값을 출력하시오.입력첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 자연수 N이 주어진다.출력첫째 ..
2024.09.18