본문 바로가기
728x90

전체 글205

[BOJ/백준] 3085 사탕 게임 ● [문제번호 3085] 사탕 게임 https://www.acmicpc.net/problem/3085 3085번: 사탕 게임 예제 3의 경우 4번 행의 Y와 C를 바꾸면 사탕 네 개를 먹을 수 있다. www.acmicpc.net ● 알아야 할 것 : 브루트 포스 (Brute Force) ● 풀이 과정 : 세세한 부분까지 고려하여 코드를 작성해야한다. {상, 하, 좌, 우, 그대로} 컨트롤러를 이용했다. 교환 작업 없이 작성해보려다가 점점 코드가 복잡해지는 것 같아서 교환 작업을 이용하여 작성하였다. 1. 컨트롤러에 의한 대상이 범위 밖인 경우 예외처리 2. 교환 → 사탕 수 확인 (행, 열 모두 확인) → 원위치로 교환 : 사탕의 개수를 셀 때, 해당 행, 열의 마지막 사탕까지 센 값(cnt)이 현재까지.. 2021. 9. 2.
[BOJ/백준] 2309 일곱 난쟁이 ● [문제번호 2309] 일곱 난쟁이 https://www.acmicpc.net/problem/2309 2309번: 일곱 난쟁이 아홉 개의 줄에 걸쳐 난쟁이들의 키가 주어진다. 주어지는 키는 100을 넘지 않는 자연수이며, 아홉 난쟁이의 키는 모두 다르며, 가능한 정답이 여러 가지인 경우에는 아무거나 출력한다. www.acmicpc.net ● 알아야 할 것 : 브루트 포스 (Brute Force) : vector 자료구조와 메소드 ● 풀이 과정 : 9명 중 7명을 선택 == 9명 중 2명을 제외 따라서 제외할 2명의 조합을 모두 탐색하면서 조건에 맞는 지 확인한다. ● 주의 할 것 : NULL ● 참고 할 것 : NULL ● 풀이 코드 #include using namespace std; // heigh.. 2021. 9. 2.
[백준 code.plus] 알고리즘 기초 1/2 목차 ● [백준] - [code.plus] - [알고리즘 기초 1/2] 문제집 문제집 이름 문제집 링크 풀이 링크 200 - 자료구조 1 https://www.acmicpc.net/workbook/view/3953 https://pirateturtle.tistory.com/153 201 - 자료구조 1 (연습) https://www.acmicpc.net/workbook/view/3954 https://pirateturtle.tistory.com/165 203 - 자료구조 1 (참고) https://www.acmicpc.net/workbook/view/3955 https://pirateturtle.tistory.com/170 300 - 수학 1 https://www.acmicpc.net/workbook/view.. 2021. 8. 22.
[BOJ/백준] 2133 타일 채우기 ● [문제번호 2133] 타일 채우기 https://www.acmicpc.net/problem/2133 2133번: 타일 채우기 3×N 크기의 벽을 2×1, 1×2 크기의 타일로 채우는 경우의 수를 구해보자. www.acmicpc.net ● 알아야 할 것 : 다이나믹 프로그래밍 ● 풀이 과정 : 여러 가지 경우의 수가 떠올라서 이렇게 하는게 맞나 싶어 구글링을 했더니 경우의 수를 많이 따지는 것이 맞았다. : DP 풀이과정 (Bottom - Up) 1. 테이블 정의하기 → dp[index] : index까지 타일로 채우는 경우의 수 2. 점화식 찾기 → 3X홀수 벽을 타일로 채울 수 없으므로 N이 홀수일 때는 0 출력 2일 때, 4일 때, 6일 때, 8일 때를 그려보면서 규칙을 찾아나간다. 풀이과정 참고.. 2021. 8. 5.
[BOJ/백준] 13398 연속합 2 ● [문제번호 13398] 연속합 2 https://www.acmicpc.net/problem/13398 13398번: 연속합 2 첫째 줄에 정수 n(1 ≤ n ≤ 100,000)이 주어지고 둘째 줄에는 n개의 정수로 이루어진 수열이 주어진다. 수는 -1,000보다 크거나 같고, 1,000보다 작거나 같은 정수이다. www.acmicpc.net ● 알아야 할 것 : 다이나믹 프로그래밍 ● 풀이 과정 : 1912 연속합 문제를 참고해서 풀려다가 뭔가 꼬이는 바람에 구글링을 했는데 간단하게 풀 수 있던 문제였다. : DP 풀이과정 (Bottom - Up) 1. 테이블 정의하기 → dp[0][index] : index까지 수열의 연속합 (수열에서 0개 제거) dp[1][index] : index까지 수열의 연.. 2021. 8. 5.
[BOJ/백준] 11054 가장 긴 바이토닉 부분 수열 ● [문제번호 11054] 가장 긴 바이토닉 부분 수열 https://www.acmicpc.net/problem/11054 11054번: 가장 긴 바이토닉 부분 수열 첫째 줄에 수열 A의 크기 N이 주어지고, 둘째 줄에는 수열 A를 이루고 있는 Ai가 주어진다. (1 ≤ N ≤ 1,000, 1 ≤ Ai ≤ 1,000) www.acmicpc.net ● 알아야 할 것 : 다이나믹 프로그래밍 ● 풀이 과정 : 11055 가장 큰 증가 부분 수열 과 11722 가장 긴 감소하는 부분 수열 의 문제를 섞었다. : 처음에 증가하는 부분 수열을 구하고 2번째에 감소하는 부분 수열로 연결하면 된다. : DP 풀이과정 (Bottom - Up) 1. 테이블 정의하기 → dp[index] : index까지 수열의 감소 부분.. 2021. 8. 5.
728x90